JS数组常用方法和注意事项

代码 代码 1262 人阅读 | 0 人回复

<

  • push
  • push()  
  • concat()
  • pop()
  • shift()、unshift()
  • slice()
  • splice()
  • sort()
  • map
  • filter
  • foreach
  • some
  • reserve
  • indexOf
1)push() :背数组开端逃减数据,返回修正后的少度,改动本数组数据。
  1. var arry = [1,2,3]
  2. var arryInfo = arry.push(5)
  3. console.log(arryInfo) // 4
  4. console.log(arr) // [1,2,3,5]
复造代码
2)concat(): 战push办法相同,背数组开端逃减数据,返回一个新的数组,没有改动本数组的数据。
  1. var arry = [1, 2, 3]
  2. var arryInfo = arry.concat(5)
  3. console.log(arryInfo) // [1, 2, 3,5]
  4. console.log(arry) //[1, 2, 3]
复造代码
3)pop(): 删除数组的最初一条数据,返回删除的数据,改动本来数组的数据。
  1. var arry = [1, 2, 3]
  2. var arryInfo = arry.pop()
  3. console.log(arryInfo) // 3
  4. console.log(arry) //[1,2]
复造代码
4)shift():删除数组的第一个数据,返回删除的数据,改动本数组数据,数组为空时返回undefined。
unshift():  增加数据到数组尾位,返回修正后的少度,修正本数组的数据。
  1. var arry = [1, 2, 3]
  2. var arryInfo = arry.shift()
  3. console.log(arryInfo) // 1
  4. console.log(arry) //[2,3]
复造代码
  1. var arry = [1, 2, 3]
  2. var arryInfo = arry.unshift(77)
  3. console.log(arryInfo) // 4
  4. console.log(arry) //[77,1,2,3]
复造代码
5) slice():  slice(startIdx, endIndx)截与数组数据,此中截与的数据包罗startIdx的数据,没有包罗endIndx的数据,返回截与的数组,没有改动本数组。
  1. var arry = [1, 2, 3]
  2. var arryInfo = arry.slice(0,1)
  3. console.log(arryInfo) // [1]
  4. console.log(arry) //[1,2,3]
复造代码
6)splice() : 战slice一样截与数组。战slice不同的是,splice间接修正了本数组(删除截与的部门),返回的是截与的数组。
  1. var arry = [1, 2, 3]
  2. var arryInfo = arry.splice(1,2)
  3. console.log(arryInfo) // [2,3]
  4. console.log(arry) //[1]
复造代码
7)sort(): 对数组停止排序。ps: sort是对字符串排序(根据abcdef..如许的挨次排序),不合错误数字停止排序。
        假设数组是数字,排序出有成果。这时候便需求一个排序函数辅佐。
  1. var arry = [1,4, 2, 3]
  2. var arryInfo = arry.sort()
  3. console.log(arryInfo) // [1,4,2,3]
  4. console.log(arry) //[1,4,2,3]
  5. arryInfo = arry.sort(numberSort())
  6. console.log(arryInfo) // [1,2,3,4]
  7. console.log(arry) // [1,2,3,4]
复造代码
  1. // 排序函数
  2. function numberSort(a,b){
  3.     return a-b; // a-b:暗示降序排序,b-a暗示降序排序
  4. }
复造代码
        假设数组是字符串,能够间接排序。
  1. var arry = [&#39;f1a1&#39;,&#39;c12&#39;,&#39;b33&#39;,&#39;g3&#39;,&#39;f4&#39;]
  2. var arryInfo = arry.sort()
  3. console.log(arryInfo) // ["b33", "c12", "f1a1", "f4", "g3"]
  4. console.log(arry) // ["b33", "c12", "f1a1", "f4", "g3"]
复造代码
8)map: 遍历数组。返回一个新的数组,没有改动本数组数据。
  1. var arry = [&#39;出有&#39;,&#39;嘿嘿&#39;,&#39;b33&#39;,&#39;g3&#39;,&#39;f4&#39;]
  2. var arryInfo = arry.map(v=>{
  3.     return v+&#39;map&#39;
  4. }
  5.         )
  6. console.log(arryInfo) // ["出有map", "嘿嘿map", "b33map", "g3map", "f4map"
  7. console.log(arry) // ["出有", "嘿嘿", "b33", "g3", "f4"]
复造代码
9)filter: 挑选数组婚配的数据。返回婚配的数据数组,没有改动本数组数据。
  1. var arry = [&#39;出有&#39;,&#39;嘿嘿&#39;,&#39;b33&#39;,&#39;g3&#39;,&#39;f4&#39;]
  2. var arryInfo = arry.map(v=>{
  3.     return v+&#39;map&#39;
  4. }
  5.         )
  6. console.log(arryInfo) // ["嘿嘿"]
  7. console.log(arry) // ["出有", "嘿嘿", "b33", "g3", "f4"]
复造代码
10)foreach: 遍历数组。出有返回值,间接操纵数组数据。
  1. var arry = [&#39;出有&#39;,&#39;嘿嘿&#39;,&#39;b33&#39;,&#39;g3&#39;,&#39;f4&#39;]
  2. var arryInfo = arry.foreach(v=>{
  3.     return v+&#39;foreach&#39;
  4. }
  5.         )
  6. console.log(arryInfo) // undefined
  7. console.log(arry) // ["出有", "嘿嘿", "b33", "g3", "f4"]
复造代码
11)some: 查询数组中能否存正在婚配的数据。有婚配的数据便返回true,没有改动本数组。
  1. var arry = [&#39;出有&#39;,&#39;嘿嘿&#39;,&#39;b33&#39;,&#39;g3&#39;,&#39;f4&#39;]
  2. var arryInfo = arry.some(v=>{
  3.     return v.endWiths(&#39;3&#39;)
  4. }
  5.         )
  6. console.log(arryInfo) // true
  7. console.log(arry) // ["出有", "嘿嘿", "b33", "g3", "f4"]
复造代码
12)reserve: 反转数组中的数据。间接操纵的是本数组。
  1. var arry = [&#39;出有&#39;,&#39;嘿嘿&#39;,&#39;b33&#39;,&#39;g3&#39;,&#39;f4&#39;]
  2. var arryInfo = arry.reserve()
  3.         )
  4. console.log(arryInfo) // ["f4", "g3", "b33", "嘿嘿", "出有"]
  5. console.log(arry) // ["f4", "g3", "b33", "嘿嘿", "出有"]
复造代码
13)indexOf:indexOf(必传参数,可选参数),从数组的开首开端查找必传参数的下标,可选参数设置从哪一个下标开端查找。
  1. var arry = [&#39;出有&#39;,&#39;嘿嘿&#39;,&#39;b33&#39;,&#39;g3&#39;,&#39;f4&#39;]
  2. var arryInfo = arry.indexOf(&#39;嘿嘿&#39;)
  3. console.log(arryInfo) // 1
  4. console.log(arry) // ["出有", "嘿嘿", "b33", "g3", "f4"]
  5. arry.indexOf(&#39;嘿嘿&#39;,2)
  6. console.log(arryInfo) // -1 暗示出有查找到
复造代码
以上均为小我私家总结,有补充的处所大概不合错误的处所欢迎留行~

免责声明:假如进犯了您的权益,请联络站少,我们会实时删除侵权内乱容,感谢协作!
1、本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明,如果原文没有版权声明,按照目前互联网开放的原则,我们将在不通知作者的情况下,转载文章;如果原文明确注明“禁止转载”,我们一定不会转载。如果我们转载的文章不符合作者的版权声明或者作者不想让我们转载您的文章的话,请您发送邮箱:Cdnjson@163.com提供相关证明,我们将积极配合您!
2、本网站转载文章仅为传播更多信息之目的,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证信息的正确性和完整性,且不对因信息的不正确或遗漏导致的任何损失或损害承担责任。
3、任何透过本网站网页而链接及得到的资讯、产品及服务,本网站概不负责,亦不负任何法律责任。
4、本网站所刊发、转载的文章,其版权均归原作者所有,如其他媒体、网站或个人从本网下载使用,请在转载有关文章时务必尊重该文章的著作权,保留本网注明的“稿件来源”,并自负版权等法律责任。
回复 关闭延时

使用道具 举报

 
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则