• substr和substring,slice和splice的区别,js字符串截取和数组截取


    本文参考了文章:https://blog.csdn.net/kenberkeley/article/details/50983734

    博主已经总结得很好了,看完之后也能明白,不过还是觉得要自己动手敲一敲,加深理解,并且记录下来,于是就有了这篇博客

    首先,substringsubstr,看词就知道str指的是字符串,所以都是对字符串进行截取的函数,并且都是返回原字符串的副本,不改变原字符串

    var str = "012345678";
    console.log(str.substring(1)); // 12345678第二个参数为空,则默认截取到结束
    console.log(str.substring(1,4)); // 123, 1表示起始下标,4表示截止下标
    
    console.log(str.substr(1)); // 12345678第二个参数为空,则默认截取到结束
    console.log(str.substr(1,4)) // 1234, 1表示起始下标,4表示截取长度
    console.log( str.substr(-4) ); // 5678, 可以接受一个负数,截取后四位
    
    console.log(str); // 012345678,原数组不改变

    总结一下,

    sunstring($1,$2)$1指的是起始下标,$2指的是截止下标,所以截取区间是[$1,$2]

    substr($1,$2)$1也指的是起始下标,不同的是$2指的是截取长度,所以截取区间是[$1,$1+$2-1]

    第二:slicespice是针对数组进行操作的(slice也能用于字符串),返回值是一个数组,slice不改变原数组,splice是直接在原数组上进行操作的(直接在数组上操作的还有 pop/push/shift/unshift/sort/reverse)

    var arr = [0,1,2,3,4,5,6,7]
    console.log(arr.slice(1)); // [1, 2, 3, 4, 5, 6, 7]第二个参数为空,则默认截取到结束
    console.log(arr.slice(1,4)); // [1, 2, 3], 1是起始下标,4是结束下标
    console.log(arr) //  [0, 1, 2, 3, 4, 5, 6, 7] 原数组没有改变
    
    console.log(arr.splice(1,4)); // [1, 2, 3,4] 返回的是被截取的部分
    console.log(arr); // [0, 5, 6, 7] 除开被splice截取的部分,原数组还剩下这几个

    slice不直接操作数据,返回被被切部分的副本,区间表示为[$1, $2) 。$1 是起始下标,$2 是截止下标。注意不包含$2本身

    splice直接操作原数组,返回被切掉的部分, 区间表示为[$1, $1+$2-1] 。 $1 是起始下标, $2 是切多少个

  • 相关阅读:
    C#中对值类型和引用类型的一点认识
    C#随机双色球
    C#中使用ref 和 out 的一点认识
    PHP_零基础学php_3PHP函数、传参函数、默认参数、函数返回值
    PHP_零基础学php_2变量、预定义变量、预定义常量、表达式、运算符、程序控制流程
    PHP_零基础学php
    dedeCMS中单独调用子栏目模板和子栏目的文章时修改源代码给channel和chanenartllist加上limit
    CSS_img标签usemap属性图片中选择区域加入超链接
    C_文件读写流
    怎样从10亿查询词找出出现频率最高的10个
  • 原文地址:https://www.cnblogs.com/daisygogogo/p/8984299.html
Copyright © 2020-2023  润新知