美文网首页
Slice,substring,substr的仨事

Slice,substring,substr的仨事

作者: 自然与大象吧 | 来源:发表于2016-09-09 08:10 被阅读0次

    首先这三个函数的出现而来的目的就是为了获取字符串的字符。
    相同点就是都有有两个参数

    slice(BeginSlice, EndSlice);
    substring(indexStart, indexEnd);
    substr(index, length);
    

    让它们发生更本变化的就是传入的那两个参数。通过how to use them去对比发现的。
    一开始自己肯定要先明白每一个概念的含义以及使用方法,如果看了就继续往下一个函数看,收获我想也不大。
    看看相同点

    //如果开始索引与结束索引一样会返回""
    var str = 'Mozilla';    
    str.slice(1,1);//""
    str.substring(1,1);//这两个函数返回的结果是 ""
    
    //如果结束索引被忽略了,那么获取字符串将进行到字符串的结尾
    str.slice(0);
    str.substring(0);
    
    //截取字符串不包括结束索引的值
    str.slice(0,2);//'Mo' 没有取到'z'的值
    str.substring(0,2);//'Mo'
    

    substring的不同

    //substring如果参数小于0或者是NaN,当作0来处理,可以试试看
    str.substring(-1,2);//'Mo'
    str.substring(NaN,2);//'Mo'
    str.substring(0,2);//'Mo'
     
    //如果indexStart > indexEnd,那么两者会交换位置
    str.substring(10,2) == str.substring(2,10);//true
    

    slice的不同

    //如果beginSlice索引为负数,那么会被处理为str.length + beginSlice
    str.slice(-2,-1);//等一下行代码
    str.slice(str.length-2, str.length-1);
    
    //如果begin > end,不管是正数还是负数都返回为""
    str.slice(5,2);//""
    str.slice(-2,-5);//""
    

    substr

      //第一Index为负数时,处理为str.length + Index
      str.substr(-4,5);
      str.length(str.length-4,5);
    
      //第一个索引为NaN时当作零来处理
      str.substr(NaN,5) == str.substr(0,5);
    
      //当第二个参数为负数或者NaN或者零时,返回""
      str.substr(2,0);//""
      str.substr(2,NaN);//""
      str.substr(2,-1);//""
    

    真的好难写一篇技术文章呀,我的天呐没掌握全不敢写出来呀。真的一点逻辑也没有感觉

    相关文章

      网友评论

          本文标题:Slice,substring,substr的仨事

          本文链接:https://www.haomeiwen.com/subject/czheettx.html