JS数组

作者: Marshall3572 | 来源:发表于2021-02-27 07:53 被阅读0次

JS中其实没有真正的数组,JS的数组是用对象模拟的。
重点理解splicereduce

如果一个数字的原型链中没有那些数组所共有的属性(push,pop等),那么它就是伪数组
新建
let arr = [1,2,3]
let arr = new Array(1,2,3)
let arr = new Array(3)
转化
let arr = '1,2,3'.split(',')
let arr = '123'.split('')
Array.from('123')

合并两个数组,得到新数组
arr1.concat(arr2)
截取一个数组的一部分
slice
arr1.slice(1) //截取从第二个元素到最后一个
arr1.slice(0) //全部截取
注意,JS只提供浅拷贝

删除数组元素

  • let arr = ['a','b','c']
    delete arr['0']
    arr//[empty,'b','c']
    array.length === 3 //true数组长度不变,变成稀疏数组。
  • 缩短length也可以删数组元素
    但是不建议这么做

以上两种删除数组元素的方法都不推荐,使用下边三种。

  • 删除头部元素 arr.shift() //arr被修改,并返回被删元素
  • 删除尾部元素 arr.pop() //arr被修改,并返回被删元素
  • 删除中间元素
    arr.splice(index,x) //删除下标为index的后边x个元素

遍历数组


forEach函数
function forEach(array,fn){
    for(let i = 0; i < array.length ;i++){
        fn(array[i],i,array)
}
}

查找某个元素是否在数组里
arr.indexOf(item) //若存在返回索引号,不存在返回-1
使用条件查找元素
arr.find(item=>item%2 === 0) //找第一个偶数
使用条件查找元素的索引
arr.findIndex(item=>item%2 === 0) //找第一个偶数的索引

增加数组中的元素

在头部添加元素
arr.unshift(item) //修改arr,返回新长度
arr.unshift(item1,item2) //修改arr,返回新长度
在尾部添加元素
arr.push(item)
arr.push(item1,item2)
在中间添加元素
arr.splice(index,0,'x')
arr.splice(index,0,'x','y')

修改数组中的元素

  • 反转数组
    arr.reverse()

    但是如何反转字符串呢?
var s = 'abcde'
s.split('')
s.split('').reverse()
s.split('').reverse().join('')
  • 自定义顺序
    arr.sort((a,b)=>a-b)

数组变换

  • map
    n变n
arr.map(item => item*item)
  • filter
    n变少
arr.filter(item => item%2 === 0 ? true : false)
  • reduce
    n变1
arr.reduce((sum,item)=> {return sum+item},0)

相关文章

  • js 数组链接concat,和数组转字符串join,字符串转数

    js 数组链接用concat js 数组转成字符串 js 字符串转数组

  • js数组题目

    js面试题 js数组 一、按要求分割数组 将"js,数组,分类"字符串数组以/分割 for循环累加 join()把...

  • js 数组

    js 中数组的长度发生改变,数组就真的发生改变,快速清空数组就让数组长度为0js 数组的方法

  • JS数组以及数组变换

    有关数组 数组对象——一种特殊的对象JS其实没有数组,只使用对象来模拟数组 典型数组和JS数组的区别 典型数组 元...

  • 数组检测

    检测是否是数组: 数组转字符串: 字符串转换数组: js对象转换成js字符串: js字符串转换成js对象:

  • 概念集合

    JS中的数组和Arrary的区别 js中的数组就是array对象

  • JS 数组

    JS 数组是一种特殊的对象,不是真正的数组,它只##是通过对象来模拟数组。 JS 数组的定义 let arr = ...

  • javaScript的数组

    js中没有数组类型 js 中数组是以内置对象的形式存在 数组定义01 var attr = new Array('...

  • 数组

    数组的定义: js:存储多个相同类型数据 ,有序的数据;php数组 1,:索引数组,同js;声明:$arrName...

  • js笔记

    js数组 删除某个元素 js数组是否含有某个元素 判断value为undefined cookie操作

网友评论

      本文标题:JS数组

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