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; })

  • 相关阅读:
    pycharm2017.3.7的安装
    SVN Working Copy xxx locked 并 cleanup失败之解
    Lua查找字符串注意
    Lua运算符
    Python操作Excel
    项目中碰到的Ajax相关的问题记录
    线程的相关概念
    val()用法和value的区别
    JSON数组对象和JSON字符串的转化,map和JSON对象之间的转化
    算法复杂度相关概念
  • 原文地址:https://www.cnblogs.com/mufc/p/10230412.html
Copyright © 2011-2022 走看看