数据处理api

数据处理API

数组

添加和删除数组元素(改变原数组)
array.push() : 在数组最后面添加元素,返回新数组的长度

array.unshift() : 在数组最前面面添加元素,返回新数组的长度

array.pop() : 删除数组最后一个元素,返回被删除的数组元素,缺点是一次只能删除一个元素

array.shift(): 删除数组的第一个元素,返回被删除的数组元素,缺点是一次只能删除一个元素
他们都返回添加或删除的元素

array.splice(开始操作的索引,需要删除的元素个数,需要添加的元素)

原数组发生变化,以新数组的形式返回被删除的元素

如果第二个参数为0,那么就是添加数组元素;

如果第二个参数是1,那么就是替换元素

如果只有两个参数,那么就是删除元素,以数组的形式返回被删除的元素,但是会改变元数组,这个最常用

截取数组

array.slice(开始截取的索引,结束截取的索引)

不会改变原数组,返回新的截取的数组
array.slice(a,b);则返回 [ a , ……,b-1];返回的新数组不会包含结束的索引元素

两个参数都是可选参数,如果只有一个参数,那么就是从给的索引开始,一直截取到最后;如果连个参数都没有,则为复制原来的数组

拼接数组

第一种:array1.concat(array2)

第二种:es6的展开运算符:[…array1,…array2]

翻转数组

array.reverse()

数组排序

array.sort((a,b)=>{a-b})

接收一个回调函数;

a-b为升序,b-a为降序

如果sort不接受一个函数,array.sort(),那么排序先比较第一位,然后比较第二位 eg:1 12 2 27 8

filter过滤

array.filter((value,index)=>{return value>20})

接后一个回调函数;不改变原数组array;返回符合条件的新数组

map对数组中的每一个元素做同样的处理

array.map((value,index)=>{return value*2})

接后一个回调函数;不改变原数组array;返回一个处理好的新数组

some遍历查找数组元素

array.some((value,index)=>{return value>20})

不会改变原数组;返回一个布尔值;

forEach:for循环

array.forEach((value,index)=>{})

它就相当于for循环,不会返回新数组

find查找数组元素(es6)

array.find((value,index)=>{return value>20})

返回第一个符合条件的元素,没有则返回undefined

findIndex查找元素索引(es6)

array.findIndex((value,index)=>{ return value>20})

返回第一个符合条件的元素索引,没有则返回 -1

indexOf 查找元素索引

array.indexOf(‘name’)

返回第一个符合条件的元素索引,没有则返回 -1

includes查找数组元素

includes(需要查找的元素,开始查找的位置)

返回布尔值,

第一个参数为必填参数,第二个为选填,没有则全数组中找

总结对比**(判断数组中是否含有个元素):

indexOf:返回符合条件的元素索引,没有则返回-1,但是只能判断是否包含某个元素

find:返回符合条件的元素,没有则返回undefined,可以进行范围条件的查找

findIndex:返回符合条件的元素索引,没有则返回-1,可以进行范围条件的查找

includes:返回布尔值,只能判断是否包含某个元素

some:返回布尔值,可以进行范围条件的查找

数组转字符串

方法1:array.join(‘分隔符’)

方法2:array.toString(),他不能指定分隔符

字符串

字符串具有不可变性,因为他是简单数据类型,不可更改,只会在内存中重新开辟一个空间,所以下面的方法都不会改变原来的字符串,我们需要用一个变量来保存结果(也有可能我们立即链式使用)

去除两边空格

String.trim()

查找元素,返回索引

String.indexOf(需要查找的元素,开始查找的位置)

第一个参数为必填参数,第二个可选参数

截取字符串

方法1:String.substr(开始截取的索引,截取多少个)

方法2:String.substring(开始截取的索引,结束截取的索引)

如果只有一个参数,那么都是一样的效果,从索引开始,一直截取到最后(也就是返回去掉了前n个的新字符串)

如果有两个参数,那么就是不一样了,第二个参数代表含义不一样,效果也不一样

字符串转换

字符串转数组:String.split(‘数组分隔符’)

字符串替换

String.replace(需要替换的元素,替换成的元素)

它找到了第一个需要替换的元素后,完成替换,将不再往后查找替换; 所以不过是要全部替换的话,可以配合循环来实现

大小写转换

String.toUpperCase()

String.toLowerCase()

对象

Object.keys(object) 如果你给他传入一个对象,那么返回对象属性名组成的数组

遍历对象
for( let k in object){
console.log(k)          // 拿到的是属性名
console.log(object[k]) //拿到的是属性值,相当于 obj.k; 只不过k是变量,只能用中括号
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值