JavaScript 字符串用于存储和处理文本。String (字符串)可以存储一系列字符,如 "JavaScript之字符串的方法"。String也是基础数据类型。接下来查看String常用方法,如有不足和不对的地方,请大家帮忙加以指证,谢谢。

①:length(): 输出字符串长度

 

<script>  
     var str = "Hello lian,nice to meet you,How are you?"
     console.log("str的长度为:" + str.length);  
</script>

 

 

javascript 输入字符串 javascript输出字符串_字符串

 

 ②:charAt(): 返回指定位置的字符,索引从0开始

<script>
        var word = 'wonderful'
        console.log(word.charAt(2)); // 返回索引2的字符
        console.log(word.charAt(0)); // 返回索引0的字符
        console.log(word.charAt(10)); // 超出字符串长度,显示" "
        console.log(word.charAt(-1)); // 索引为负数,显示" "
</script>

javascript 输入字符串 javascript输出字符串_字符串_02

 

  ③:concat: 连接两个或者多个字符串,返回一个新字符串,不改变原字符串。

<script>
        // 遇到不是字符串类型的,先转变成字符串再进行拼接
        var mon = '2022'
        var day = '04'
        var min = 10
        var hour = 15
        console.log(mon.concat(day,min,hour));
        // 字符串拼接也可以使用'+'
        console.log(mon + day + min)
        // concat和'+'的区别:concat直接转变字符串拼接,'+'遇到数字会相加
        console.log(hour + min + day + mon) 
</script>

javascript 输入字符串 javascript输出字符串_字符串_03

 

   ④:substring():从原字符串取出子字符串并返回,不改变原字符串,初始位置为0,类似python切片,包头不包尾部

 

<script>
        console.log("substring的用法");
        var word = 'wonderful'
        console.log(word.substring(2,6));   // nder
        // 如果第一个参数大于第二个参数,自动更换两个参数的位置
        console.log(word.substring(6,2));    // nder
        //  第二个参数没有写,默认到字符串的最后一个单词
        console.log(word.substring(2));     //  nderful
       //  如果参数是负数,自动将负数转为0
        console.log(word.substring(2,-3));  // wo
        console.log(word.substring(-3));    // wonderful
</script>

javascript 输入字符串 javascript输出字符串_子字符串_04

 ⑤:substr():从原字符串取出子字符串并返回,不改变原字符串,初始位置为0,类似substring切片,包头不包尾部

<script>
        console.log("substr的用法");
        var word = 'wonderful'
        // 第一个参数是索引位置, 第二个参数是子字符串的长度
        console.log(word.substr(2,6));   // nderfu
        console.log(word.substr(6,2));    // fu
        //  第二个参数没有写,默认到字符串的最后一个单词
        console.log(word.substr(2));     //  nderful
        //  如果第二个参数是负数,将被自动转为0,因此会返回空字符串
        console.log(word.substr(2,-3));  // ''
        // 如果第一个参数是负数,表示倒数计算的字符位置
        console.log(word.substr(-3));    // ful
</script>

 

javascript 输入字符串 javascript输出字符串_子字符串_05

 ⑥:slice():从原字符串取出子字符串并返回,不改变原字符串,初始位置为0,类似substring,包头不包尾部

<script>
        console.log("slice的用法");
        var word = 'wonderful'
        // 第一个参数是索引位置,第一个参数是另一个索引位置
        console.log(word.slice(2,6));   // nder
        //  如果第一个参数大于第二个参数,slice方法返回一个空字符串
        console.log(word.slice(6,2));    // ''
        // 第二个参数没有写,默认到字符串的最后一个单词
        console.log(word.slice(2));     //  nderful
        // 第二个参数是负数,倒着数对应的索引位置,最后一个索引是-1,截取也是包头不包尾
        console.log(word.slice(2,-3));  // nder
        console.log(word.slice(-3));    // ful
        // 如果参数是负值,两个参数都是从尾部开始取,去对应的长度,包头有不包尾
        console.log(word.slice(-1,-3));    // ''
</script>

 

总结以上三种提取部分字符串

 

  • slice(startend)
  • substring(startend)
  • substr(startlength)

 

⑦:indexOf(): 确定一个字符串在另一个字符串中第一次出现的位置,返回匹配开始的索引。不匹配则返回-1

<script>
        console.log("indexOf的用法");
        var word = 'lxx i love you'
        console.log(word.indexOf('love')); // 6
        // 第二个参数,表示从该位置开始向后匹配
        console.log(word.indexOf('love',4)); // 6
        // 匹配不到返回-1
        console.log(word.indexOf('hate')); // -1
</script>

javascript 输入字符串 javascript输出字符串_字符串_06

 ⑧:trim(): 用于去除字符串两端的空格,返回一个新字符串,不改变原字符串

<script>        
        console.log("trim的用法");
        var word = '    wonderful   '
        var word1 = '\t\nwonderful\r\n '
        // 该方法去除的不仅是空格,还包括制表符(\t、\v)、换行符(\n)和回车符(\r)
        console.log(word.trim()); 
        console.log(word1.trim()); 
        // ES6扩展方法,trimStart():去除前面的空格 
        console.log(word.trimStart()); 
        // ES6扩展方法,trimEnd():去除后面的空格         
        console.log(word.trimEnd()); 
</script>

javascript 输入字符串 javascript输出字符串_子字符串_07

  ⑨:split(): 按照给定规则分割字符串,返回一个由分割出来的子字符串组成的数组

<script>
        console.log("split的用法");
        var word = 'wonderful'
        var word1 = 'won|der|ful'
        // 如果分割规则为空字符串,则返回数组的成员是原字符串的每一个字符。
        console.log(word.split(''));
        //  如果省略参数,则返回数组的唯一成员就是原字符串
        console.log(word.split());
        //  split方法指定分隔符
        console.log(word1.split('|'));
        // split方法还可以接受第二个参数,限定返回数组的最大成员数。
        console.log(word.split('',4));
</script>

javascript 输入字符串 javascript输出字符串_字符串_08

⑩:replace() 方法用另一个值替换在字符串中指定的值:

<script>
        // ⑩:replace() 方法用另一个值替换在字符串中指定的值:
        var word = 'i love you'
        console.log("replac的用法");
        console.log(word.replace('love','hate'));
        console.log(word); // 不改变原字符
        // replace: 只替换首个匹配
        var word1 = 'What do you do besides sleep'
        console.log(word1.replace('do','did'));
</script>

javascript 输入字符串 javascript输出字符串_字符串_09

⑪:toLowerCase():方法用于将一个字符串全部转为小写 (不改变原字符串) toUpperCase则是全部转为大写。(不改变原字符串)

<script>
        var name = "Myfirstname";
        console.log("toLowerCas的用法");
        console.log(name.toLowerCase()); // 全部转为小写
        console.log(name.toUpperCase()); // 全部转为大写

        // 驼峰命名法:第一个单字以小写字母开始,第二个单 字的首字母大写;或每一个单字的首字母都采用大写字母,
        var F = name.substring(2,3).toUpperCase();
        var N = name.slice(7,8).toUpperCase();
        console.log(name + "的驼峰命名为:" + name.substr(0,2) + F + name.substr(3,4) + N + name.substr(-3,3))
</script>

javascript 输入字符串 javascript输出字符串_子字符串_10