Javascript-字符串对象

一.基本包装类型:

var str = 'andy';

console.log(str.length); //结果为4

//其执行的过程:

//1.生成临时变量,把简单的数据类型变成复杂的数据类型

  var temp = new String('andy');

//2.赋值给我们声明的字符变量

  str = temp;

//3.销毁临时变量

  temp = null;

把简单的数据类型包装成复杂的数据类型,这样基本数据类型就有了属性和方法(对象)。

二.字符串的不可变性。

var str = 'abc';
str = 'hello';
//当重新给str赋值时,常量'abc'不会被修改,依然在内存中
//重新给数组串赋值,会重新在内存中开辟空间,这个是字符串的不变性
//如果大量赋值会占大量内存出现卡顿
var str = '';
for(i=0;i<=100;i++){
str +=i;
}
console.log(str);  //这个结果会花大量的时间来显示,因为需要不断地开辟新的空间
                  

 三.根据字符返回位置

  indexOf('要查找的字符‘’,开始的位置)   返回指定内容在字符串中的位置,如果找不到就返回-1,开始的位置是index索引号。

  lastindexOf()   从后往前找,只找第一个匹配的。

//案例
var str = "abcoefoxyozzopp";
var index = str.indexOf('o');
var num = 0;
while (index !==-1) {
    console.log(index);
    num++;
    index = str.indexOf('o',index + 1);
 }
console.log('o出现的次数:' + num);

 四.根据位置返回字符

1.charAt(index) 返回指定位置的字符(index 字符串的索引号)  【 str.charAt(0) 】

2.charCodeAt(index) 获取指定位置字符的ASCll码(index索引号)【 str.charCodeAt(0)】

3.str[index] 获取指定位置的字符  (html5,IE8+支持和charAt()等效)

五.字符串操作方法(重点)

1.concat(str1,str2,str3....)  concat 方法用于连接两个或多个字符串,拼接字符串,等效于+,+更常用。

2.substr(start,length)  从start位置开始,length取的个数(重点)

3.slice(star,end) 从start位置开始,截取到end位置,end截取不到(他们两个都是索引号)

4.substring(start,end)  从start位置开始,截取到end位置,end截取不到  基本和slice相同  但是不接受负值。

六。其他方法

1.替换字符 replace (‘被替代的字符’,‘替换为的字符’)

2.字符转换为数组split(‘分隔符’)

3.toUpperCase()  //转换大写

4.toLowerCase()  //转换为小写

原文地址:https://www.cnblogs.com/showlgfcode/p/13823746.html