一文搞定JavaScript字符串对象基本知识

本篇文章给大家带来了关于javascript的相关知识,其中主要介绍了关于字符串对象的相关问题,包括了一些基本概念和实际使用等等内容,下面一起来看一下,希望对大家有帮助。

一文搞定JavaScript字符串对象基本知识

【相关推荐:javascript视频教程、web前端】

基本概念

基本包装类型:把简单数据类型包装成了复杂数据类型。(基本数据类型就有了属性和方法)

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=&#39;cindy&#39;;
console.log(str.concat(&#39;red&#39;);

2、substr(start,length)

从start开始取length长度的字符

var str=&#39;你是我的神&#39;;
console.log(str.substr(2,2));

3、替换字符replace('被替换的字符','替换的字符')

只替换第一个字符

var str=&#39;andandand&#39;;
console.log(str.replace(&#39;a&#39;,&#39;b&#39;);//bndandand

4、字符转换为数组split('分隔符')

var str=&#39;red,pink,blue&#39;;

console.log(str.split(&#39;&&#39;));

5、toUpperCase()转换为大写

6、toLowerCase()转换成小写


简单案例

  • 查找‘abcdefgabcdefg’中所有g出现的位置及次数

  var str=&#39;abcdefgabcdefg&#39;;
        var index=str.indexOf(&#39;g&#39;);
        var num=0;
        while(index!==-1){
            console.log(index);
            num++;
            index=str.indexOf(&#39;g&#39;,index+1);
        }
        console.log(&#39;g出现的次数是:&#39;+num);
  • 判断一个字符串‘abcdefgabcdefg’中出现最多的字符,统计次数

var str=&#39;abcdefgabcdefg&#39;;
       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=&#39;&#39;;
       for(var k in obj){
           if(obj[k]>max){
               max=obj[k];
               ch=k;
           }
       }
       console.log(max);
       console.log(&#39;最多的字符为&#39;+ch);
  • ‘abcoefoxyozzoopp’把o替换为*

 var str=&#39;abcoefoxyozzoopp&#39;;
        while(str.indexOf(&#39;o&#39;)!==-1){
            str=str.replace(&#39;o&#39;,&#39;*&#39;);
        }
        console.log(str);

【相关推荐:javascript视频教程、web前端】

以上就是一文搞定JavaScript字符串对象基本知识的详细内容,更多请关注其它相关文章!