JS 数组(对象、字符串)方法

  1. Array.entries() Object.entries() 返回一个新的迭代数组 可枚举属性的键值对数组

let list = {a:'a1',b:'b1'}
console.log(Object.entries(list))
// [['a','a1'],['b','b1']]
let arr = ['a','b','c']
I. for(let item of arr){
    log(item)   //拿到arr每一个元素
    }
Ⅱ.for(let [index,ele] of arr.entries()){  //数组解构
    log(ele)    //index拿到每个元素的索引值,ele拿到每个元素
    }
Ⅲ》for(let item of arr.entries()){
    log(item)   //item拿到一个数组,【索引值,元素值】
    }
  1. Array.flat() 扁平数组 可指定深度递归遍历数组,返回新数组

let arr = [1, 2, [3, 4, [5, 6, [7, 8, [9, 10]]]]];
arr.flat(Infinity)     // infinity只可任意展开深度的嵌套数组,默认为1
// [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
声明一个空数组,进行循环push,可能出现空数据情况,flat()对其数据扁平
  1. Array.filter() 数组过滤,创建给定数组一部分的浅拷贝,返回新数组

Array.filter((element, index, array) => { /* … */ } )
// 当前值、索引、当前数组
  1. Array.find() 返回满足符合条件第一个元素的值,否则undefinded

  1. Array.some() 有一个符合就返回true,所有都不符合返回false

  1. Array.every() 有一个不符合返回false,否则返回true,如果是空数组,始终返回true

  1. Array.map() 数组循环,返回新数组

  1. forEach 数组循环,没有返回值,返回undefined,没有办法中止或跳出循环,除非抛出异常

  1. for... of 不能遍历对象

var arr = ['nick','freddy','mike','james'];
for(let item of arr){
    console.log(item)    // 拿到每一项值
}
  1. for in 遍历对象,遍历数组

var arr = ['nick','freddy','mike','james'];
var obj = {
    0: 'nick',
    1: 'freddy',
    2: 'mike',    
    3: 'james'
};
for(let item in arr){
    console.log(item,arr[item])    // 索引值,每一项值
}
  1. Object.assign() 复制对象、对象合并

const obj = {"a":1}
const newObj = Object.assign({},obj) 
// log({"a":1})    复制对象obj到空对象,假如源对象是一个对象的引用,它仅仅会复制其引用值,并不能实现深拷贝
Object.assign(目标对象,源对象)
  1. Object.hasOwn() 判断指定对象 的指定属性,返回true/false

const obj = {"name":"han"}
log(Object.hasOwn(obj,'name'))  // true
Object.hasOwn(指定对象,指定对象的属性值)
  1. Object.keys() Object.values() 返回一个数组

Object.keys(要返回其枚举自身属性的对象)
  1. Object.freeze() 冻结对象,返回被冻结的对象

const obj = {a:'1'}
Object.freeze(obj)
obj.a = '2' // 此时修改不了
  1. Object.isFrozen() 判断是否被冻结,返回true/false

  1. Array.toString() 返回一个字符串

const arr = [1,2,'a']
log(arr.toString(arr))  // '1,2,a'
  1. Array.splice() 删除/添加 元素 给数组 ,返回新数组,改变原始数组

const arr = [1,2,3]
Array.splice(指定修改的开始位置,要移除元素的个数,【要添加进数组的元素,不指定则表示只删除】)
log(arr.splice(1,0,'add'))   // [1,'add',2,3]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值