基本包装类型:把简单数据类型包装成了复杂数据类型。(基本数据类型就有了属性和方法)
var str='andy'; console.log(str.length);
- 把简单数据类型包装成复杂数据类型
var temp=new String('andy');
- 把临时变量的值给str
str=temp;
- 销毁临时变量
temp=null;
JavaScript提供了三个特殊的引用类型:string、number、boolean
不要大量拼接字符串,因为原来的字符串也在内存中。里面的值不变,虽然看上去可以改变内容,但其实是地址变了,内存中新开辟了一个内存空间。
字符串所有的方法都不会修改字符串本身(字符串是不可变的),操作完成会返回一个新的字符串。
从前往后查找
var str="你是我的神"; console.log(str.indexOf('我');//2 console.log(str.indexOf('我',1);
从后往前查找
var str="你是我的神"; console.log(str.lastIndexOf('我');
返回指定位置的字符
var str="andy"; console.log(str.charAt(3));
for(var i=0;i<str.length;i++){ console.log(str.charAt(i)); }
返回ASCII码,可以来判断用户按了哪个键。
console.log(charCodeAt(o));
H5新增的,有兼容问题
var str='cindy'; console.log(str.concat('red');
从start开始取length长度的字符
var str='你是我的神'; console.log(str.substr(2,2));
只替换第一个字符
var str='andandand'; console.log(str.replace('a','b');//bndandand
var str='red,pink,blue'; console.log(str.split('&'));
var str='abcdefgabcdefg'; var index=str.indexOf('g'); var num=0; while(index!==-1){ console.log(index); num++; index=str.indexOf('g',index+1); } console.log('g出现的次数是:'+num);
var str='abcdefgabcdefg'; var obj={}; for(var i=0;i<str.length;i++){ var chars=str.charAt(i); if(obj[chars]){ obj[chars]++; }else{ obj[chars]=1; } } console.log(obj); var max=0; var ch=''; for(var k in obj){ if(obj[k]>max){ max=obj[k]; ch=k; } } console.log(max); console.log('最多的字符为'+ch);
var str='abcoefoxyozzoopp'; while(str.indexOf('o')!==-1){ str=str.replace('o','*'); } console.log(str);