PaulChess/MyBlog

集合引用类型(红宝书v4)

Opened this issue · 3 comments

集合引用类型(红宝书v4)

1.搞懂Array.from和Array.of的用法和区别
Array.of用于将参数创建数组

  • var arr = new Array(4)
  • Array.of(4)
    上述两者的区别

Array.from用于将类数组对象或可遍历对象转成数组实例,参数有3,第一个是要转换的类数组对象,第二个是映射函数,相当于map, 第三个是要绑定的this值

  • arguments
  • 字符串
  • 集合和映射
  • 可迭代对象 iterator
  • 自定义对象,如{length: 4}
  • 可对数组进行浅复制

兼容性:
image

可参考: https://juejin.cn/post/6844903680244727821

2.迭代器方法
keys()、values()、entries(), 三者返回的都是迭代器,
可以用Array.from()将其转为实例

const a = ['foo', 'bar', 'baz', 'qux'];
for (const [idx, ele] of a.entries()) {
  console.log(`${idx} - ${ele}`);
}

兼容性:
image

toLocaleString()、toString()、valueOf()方法