JS - String方法详解

来源:互联网 发布:http协议获取mac地址 编辑:程序博客网 时间:2024/05/29 13:15

JavaScript 中 slice 、substr 和 substring的区别:
1: String.slice(start,end): 一个新的字符串。包括字符串 stringObject 从 start 开始(包括 start)到 end 结束(不包括 end)为止的所有字符.
2: String.substring(start,end) 这个就有点特别了,它是先从start,end里找出一个较小的值. 然后从字符串的开始位置算起,截取较小值位置和较大值位置之间的
    字符串,截取出来的字符串的长度为较大值与较小值之间的差。
    一个新的字符串,该字符串值包含 stringObject 的一个子字符串,其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop 减 start。
3: String.substr(start,end)  这个就是我们常用的从指定的位置(start)截取指定长度(end)的字符串.
    一个新的字符串,包含从 stringObject 的 start(包括 start 所指的字符) 处开始的 lenght 个字符。如果没有指定 lenght,那么返回的字符串包含从 start
    到 stringObject 的结尾的字符。

String 对象的方法 slice()、substring() 和 substr()  (不建议使用)都可返回字符串的指定部分。slice() 比 substring() 要灵活一些,因为它允许使用负数作为参数。slice() 与 substr() 有所不同,因为它用两个字符的位置来指定子串,而 substr() 则用字符位置和长度来指定子串。

复制代码
 1 var str="HelloWorld!";
 2 /* slice() */
 3 document.write(str.slice(3)+"<br />");    // output -> 'loWorld!'
 4 document.write(str.slice(5,10)+"<br />"); // output -> 'World'
 5 document.write(str.slice(5,3)+"<br />");  // output -> 'null'
 6 document.write(str.slice(3,-2)+"<br />");  // output -> 'loWorl'
 7 /* substring() */
 8 document.write(str.substring(3)+"<br />");    // output -> 'loWorld!'
 9 document.write(str.substring(5,10)+"<br />"); // output -> 'World'
10 document.write(str.substring(5,3)+"<br />");  // output -> 'lo'
11 document.write(str.substring(3,-2)+"<br />"); /*-> document.write(str.substring(3,0)+"<br />"); -> document.write(str.substring(0,3)+"<br />");*/ // output -> 'Hel'
12 /* substr() */
13 document.write(str.substr(3)+"<br />");      // output -> 'loWorld!'
14 document.write(str.substr(5,3)+"<br />");    // output -> 'Wor'
15 document.write(str.substr(3,-2)+"<br />");   // output -> 'null'
16 document.write(str.substr(1,3)+"<br />");    // output -> 'ell'
复制代码


字符串的一些知识:
    var s ="you are right";
    var b = s.substring(s.lastIndexOf("")-1 , s.length);


JavaScript 中 indexOflastIndexOf 的区别:
1: String.indexOf(searchvalue,fromindex):该方法将从头到尾地检索字符串 stringObject,看它是否含有子串 searchvalue。开始检索的位置在字符串的
    fromindex 处或字符串的开头(没有指定 fromindex 时)。如果找到一个 searchvalue,则返回 searchvalue 的第一次出现的位置。stringObject 中的字符位
    置是从 0 开始的。
2: String.lastIndexOf(searchvalue,fromindex): 该方法将从尾到头地检索字符串 stringObject,看它是否含有子串 searchvalue。开始检索的位置在字符串的
    fromindex 处或字符串的结尾(没有指定 fromindex 时)。如果找到一个 searchvalue,则返回 searchvalue 的第一个字符在 stringObject 中的位置。
    stringObject 中的字符位置是从 0 开始的

0 0