zoukankan      html  css  js  c++  java
  • Array.of && Array.from

      如果给Array构造函数传入一个数值型的值,那么数组返回的length属性会被设置为该值; 如果传入一个非数值类型的值,那么这个值会成为目标数据的唯一项;如果传入多个值,此时无论这些值是不是数值型的,都会变为数组的元素。而且,需要特别注意的是,如果直接传入一个数值型的值,虽然长度length等于这个值,但是每一项是没有值的,而且也不能用map等方法去遍历,需要用Array.from()先转换。

      

      这样是存在一些风险的,因为我们在设置的时候有时候并不能总是去注意传入的值的类型,因此,ECMAScript6 提供了 Array.of() 方法来解决这个问题。 Array.of() 与 Array 构造函数的工作机制类似,只是不存在单一数值型参数值的特例,无论有多少参数,无论参数是什么类型的, Array.of() 方法总会创建一个包含所有参数的数组。

      JavaScript不支持直接将非数组对象转换为真实数组,arguments就是一种类数组对象,如果要把它当做数组使用则必须先转换该对象的类型。Array.from()方法可以先接受可迭代对象作为第一个参数,最终返回一个数组。如果想要进一步转换数组,可以提供一个映射函数作为Array.from()的第二个参数,这个参数用来将类数组对象中的每一个值转换成其他形式,最后将这些结果储存在结果数组的相应索引中;例如: Array.from( arr,  (value) => {  return value + 1; })

  • 相关阅读:
    1041 考试座位号
    1040 有几个PAT
    1039 到底买不买
    1038 统计同成绩学生
    1037 在霍格沃茨找零钱
    1036 跟奥巴马一起编程
    1035 插入与归并
    vue-router--路由传参
    vue-router--路由原理
    vuex--在computed中使用
  • 原文地址:https://www.cnblogs.com/mufc/p/10230412.html
Copyright © 2011-2022 走看看