• 数组切片,检索方法对比


    substr,substring,slice区别

    一,作用

      切片,从原字符串中取新字符串的方法,通俗点就是用来截取字符串。

    二,相同点

      都接收一到二个参数。

      当接收一个参数是,都表示截取从当前下标,截取字符串,知道字符串的最后一个字符。

    var str = 'hello world';
    console.log(str.slice(
    3),str.substr(3),str.substring(3));

    //'lo world','lo world','lo world'

    三,不同点

      1,当接收二个参数时,第一个参数都表示当前的下标,slice和substring的第二个参数表示截取的结束下标,而substr表示的是需要截取的字符串的位数。

    console.log(str.slice(3,5),str.substr(3,5),str.substring(3,5));
     //'lo','lo wo','lo'

      2,当传入的是负数时

        slice()会把当前的负值加上字符串的长度。如slice(-3),相当于slice(8)。

        substring()会把所有的负值转化为零。

        substr()第一个负值负值会把当前的负值加上字符串的长度,第二个负值会转化为零(截取的个数不能为负)。

    indexOf与search的区别

      检索可返回某个指定的字符串值在字符串中首次出现的位置,如果没有找到返回-1。

      search()的参数可以是正则表达式,而indexOf()的参数只是普通的字符串。indexOf()是比search()更加底层的方法。

      如果只是兑一个具体字符串来茶渣检索,那么使用indexOf()的系统资源消耗更小,效率更高;如果查找具有某些特征的字符串(例如查找以a开头,后面是数字的字符串),那么indexOf()就无能为力,必须要使用正则表达式和search()方法了。

      大多是时候用indexOf()不是为了真的想知道子字符串的位置,而是想知道长字符串中有没有包含这个子字符串。若果返回索引为-1,那么说明没有,反之则有。

    every和some的区别

    1. every是所有函数的每个回调都返回true的时候才会返回true,当遇到false的时候终止执行,返回false。
    2. some函数是存在有一个函数返回true的时候终止执行并返回true,否则返回false。
    // every
    var arr = [1,6,8,-2,-5,7,-4]
    var isPositive = arr.every(function(value){
        return value > 0;
    })
    console.log(isPositive) // false
    //some
    var arr = [1,6,8,-2,-5,7,-4]
    var isPositive = arr.some(function(value){
        return value > 0;
    })
    console.log(isPositive) // true
  • 相关阅读:
    css做导航
    css和div
    表格技巧
    HTML表单
    ASP.NET MVC 中的强类型控件
    Aspose.Cells导入与导出excel
    webpack 入门
    asp.net my sqlHelper
    visual studio下用mysql数据库建EF遇到的问题及解决方法
    asp.net mvc 无刷新高效分页
  • 原文地址:https://www.cnblogs.com/ll15888/p/11611803.html
Copyright © 2020-2023  润新知