秒速赛车技巧-秒速赛车规律_官网-秒速赛车走势图
当前位置:主页 > 秒速赛车技巧 > 正文

秒速赛车下载温故js系列(16)-数组数组方法使用

  之前一直在温故js系列,希望能够知新,不过最近应业务要求,在做移动WEB,需求大,任务多。所以,只有像现在闲着的时候才能继续温故js了。

  在 JavaScript 中 Array 是一个用来构造数组的全局对象,它是一个高阶的类似有序列表的对象,是JavaScript内置对象里非常重要的一个。

  length属性返回数组的长度,是一个可变属性,表示一个数组中的元素个数。

  数组的索引由0开始,所以一个数组的最前和最后的值为限分别是:arr[0]和arr[arr.length-1]

  prototype属性返回对象类型原型的引用,所有的数组实例都继承了这个属性,所有的数组方法都定义在 Array.prototype 身上。一般来说,我们经常用prototype属性来扩展数组方法:

  Array.isArray()在ES5之前不支持,就自己写。不过现在都到ES6了,可以不管了。

  这种写法简洁,但这种方法也有一个小缺陷:你不能使用break语句中断循环,也不能使用return语句返回到外层函数。

  for-in是为普通对象设计的,你可以遍历得到字符串类型的键,因此不适用于数组遍历。但是它能遍历数组,作用于数组的for-in循环体除了遍历数组元素外,还会遍历自定义属性。举个例子,如果你的数组中有一个可枚举属性循环将额外执行一次,遍历到名为“name”的索引。就连数组原型链上的属性都能被访问到。所以,不建议使用。

  这是最简洁、最直接的遍历数组元素的语法。这个方法避开了for-in循环的所有缺陷。与forEach()不同的是,它可以正确响应break、continue和return语句。

  splice() 方法可以插入、删除或替换数组的元素,注意:同时改变了原数组。

  2.插入-向数组指定位置插入任意项元素。三个参数,第一个参数(位置),第二个参数(0),第三个参数(插入的项)

  3.替换-向数组指定位置插入任意项元素,同时删除任意数量的项,三个参数。第一个参数(起始位置),第二个参数(删除的项数),第三个参数(插入任意数量的项)

  这是因为sort排序可能是不稳定的,默认按照字符串的Unicode码位点排序。

  但是,sort()方法接受一个参数,这个参数是一个函数,可选,用来指定按某种顺序进行排列的函数。如果省略,元素按照转换为的字符串的诸个字符的Unicode位点进行排序。

  这个函数就是我们自己控制了,我们想要什么样的排序就改变这个参数函数的逻辑即可。

  slice()方法可从已有的数组中返回选定的元素数组。不会修改原数组,只会会浅复制数组的一部分到一个新的数组,并返回这个新数组。

  start必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1指最后一个元素,-2指倒数第二个元素,以此类推。end可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从start到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。vararr=[1,2,3,4,5];arr.slice(0,3);//[1,2,3]arr.slice(3);//[4,5]arr.slice(1,-1);//[2,3,4]arr.slice(-3,-2);//[3]vararr1=arr.slice(0);//返回数组的拷贝数组,是一个新的数组,不是赋值指向

  slice方法经常用来截取一个数组,不过它更常用在将伪数组转化为真数组。平时我们的函数传的参数arguments是一个伪数组,很多数组的方法不能使用,我们就需要将伪数组转化为真数组。

  filter() 方法使用指定的函数测试所有元素,并创建一个包含所有通过测试的元素的新数组。简单来说就是对数组进行过滤,返回一个过滤过的数组。

  不加参数相当于拷贝,返回数组的拷贝数组,是一个新的数组,并不是指向原来数组。

  前面讲了个splice可以在数组的任何位置插入删除元素,这儿讲的是只能在首尾插入删除的方法,秒速赛车下载用起来也很方便。

  方法使用concat()连接两个或更多的数组,并返回结果。join()把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。reverse()颠倒数组中元素的顺序。toString()把数组转换为字符串,并返回结果。toLocaleString()把数组转换为本地数组,并返回结果。valueOf()返回数组对象的原始值map()返回一个由原数组中的每个元素调用一个指定方法后的返回值组成的新数组。every()测试数组的所有元素是否都通过了指定函数的测试。some()测试数组中的某些元素是否通过了指定函数的测试。

  明年开始,5G网络将开启小规模商用,并将逐步颁发5G牌照。2020年,5G网络将正式规模化商用。...[详细]

  每日头条、业界资讯、热点资讯、八卦爆料,全天跟踪微博播报。各种爆料、内幕、花边、资讯一网打尽。百万互联网粉丝互动参与,TechWeb官方微博期待您的关注。

版权保护: 本文由 主页 原创,转载请保留链接: http://www.ecentiv.com//html/513.html