这篇“JavaScript字符串对象基本知识有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“JavaScript字符串对象基本知识有哪些”文章吧。
基本概念
基本包装类型:把简单数据类型包装成了复杂数据类型。(基本数据类型就有了属性和方法)
var str='andy';
console.log(str.length);
把简单数据类型包装成复杂数据类型
var temp=new String('andy');
把临时变量的值给str
str=temp;
销毁临时变量
temp=null;
JavaScript提供了三个特殊的引用类型:string、number、boolean
字符串的不可变
不要大量拼接字符串,因为原来的字符串也在内存中。里面的值不变,虽然看上去可以改变内容,但其实是地址变了,内存中新开辟了一个内存空间。
根据字符返回位置
字符串所有的方法都不会修改字符串本身(字符串是不可变的),操作完成会返回一个新的字符串。
1、indexOf('要查找的字符',[起始位置])
从前往后查找
var str="你是我的神";
console.log(str.indexOf('我');//2
console.log(str.indexOf('我',1);
2、lastIndexOf('要查找的字符',[起始位置])
从后往前查找
var str="你是我的神";
console.log(str.lastIndexOf('我');
根据位置返回字符
1、charAt(索引号)
返回指定位置的字符
var str="andy";
console.log(str.charAt(3));
2、遍历所有字符
for(var i=0;i<str.length;i++){
console.log(str.charAt(i));
}
3、charCodeAt(索引号)
返回ASCII码,可以来判断用户按了哪个键。
console.log(charCodeAt(o));
4、str[index]
H5新增的,有兼容问题
字符串操作方法
1、concat('字符串1','字符串2',…)
var str='cindy';
console.log(str.concat('red');
2、substr(start,length)
从start开始取length长度的字符
var str='你是我的神';
console.log(str.substr(2,2));
3、替换字符replace('被替换的字符','替换的字符')
只替换第一个字符
var str='andandand';
console.log(str.replace('a','b');//bndandand
4、字符转换为数组split('分隔符')
var str='red,pink,blue';
console.log(str.split('&'));
5、toUpperCase()转换为大写
6、toLowerCase()转换成小写
简单案例
查找‘abcdefgabcdefg’中所有g出现的位置及次数
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);
判断一个字符串‘abcdefgabcdefg’中出现最多的字符,统计次数
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);
‘abcoefoxyozzoopp’把o替换为*
var str='abcoefoxyozzoopp';
while(str.indexOf('o')!==-1){
str=str.replace('o','*');
}
console.log(str);
以上就是关于“JavaScript字符串对象基本知识有哪些”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网行业资讯频道。