arrayLike为要转化的类数组,适合有点基础的小伙伴。

1、扩展运算符...
    console.log([...arrayLike])

2、Array.form
    console.log(Array.from(arrayLike));

3、Array.prototype.slice
   console.log(Array.prototype.slice.call(arrayLike))

思路:
①Array.prototype.slice,这段是执行slice,slice不传参数其实就是克隆数组。
②让slice方法的this指向类数组(arrayLike或arguments)
实现:其实就是用call改变this指向,this变成谁,就会循环谁,把它里面每一项赋给新数组。

4、Array.apply
   console.log(Array.apply(null, arrayLike))

5、Array.prototype.concat
   console.log(Array.prototype.concat.apply([], arrayLike));
原理同call,与空数组合并,克隆数组后改变this指向。

js类数组转化为数组的5种方法【附思路】相关推荐

  1. 将数组转化成字符串的两种方法

    将数组转化成字符串的两种方法 let arr = [1,2,8,9,'西瓜']; console.log(arr.toString());//将数组转化为字符串 console.log(arr.toS ...

  2. Js数组转对象(特殊格式)和 JS中将对象转化为数组

    Js数组转对象(特殊格式)和 JS中将对象转化为数组 数组转化为对象特殊格式 arr:[ { } ,{ },{ }] 转化为obj:{ { },{ },{ } } 利用ES6语法: let obj = ...

  3. 将childNodes返回的伪数组转化为真数组

    一,原因 我们获取到的childNodes返回是一个类数组对象,将它打印出来会发现.它的原型上没有数组的常用方法: console.log("+++++",el.childNode ...

  4. 伪数组转化真数组_ES6 数组方法

    nodelist伪数组转数组,让其拥有数组方法 扩展运算符 ... let arr = document.querySelectorAll('ul li'); // 当获取dom元素list的时候,所 ...

  5. js算法数组flat展平的几种方法

    数组的展平,主要是指的是数组嵌套数组转为一维数组,总结了一下几种方法 es6原生的方法 链接: es6中的flat let arr = [1, 2, [3, 4]].flat() console.lo ...

  6. JS数组移除元素的八种方法

    JS数组移除元素的八种方法 一.修改arr的length方法 let arr = [1,2,3,4,5,6,7,8,9]; arr.length = 3; console.log('length',a ...

  7. PHP获取数组最后一个值的2种方法

    这篇文章主要介绍了PHP获取数组最后一个值的2种方法,本文直接给出实现代码,代码中包含注释,需要的朋友可以参考下 代码如下: $array=array(1,2,3,4,5);     echo $ar ...

  8. 获取php数组最后,php获取数组最后一个值的2种方法

    摘要:这篇文章主要介绍了PHP获取数组最后一个值的2种方法,本文直接给出实现代码,代码中包含注释,需要的朋友可以参考下$array=array(1,2,3,4,5); echo $array[coun ...

  9. php 从数组里删除元素,PHP从数组中删除元素的四种方法实例

    PHP从数组中删除元素的四种方法实例 一.总结 一句话总结:unset(),array_splice(),array_diff(),array_diff_key() 二.PHP从数组中删除元素的四种方 ...

  10. php数组如何写入txt文件中_php将数组写入到文件的三种方法

    php的数组十分强大,有些数据不存入数据库直接写到文件上,用的时候直接从文件中读取,本文章向大家介绍php将数组写入到文件的三种方法. 第一:serialize方法 使用 serialize 将数组序 ...

最新文章

  1. 沃尔沃加入英伟达阵营 2021年开卖自动驾驶汽车
  2. jq父级绑定事件的意义_jq——事件
  3. 2、程序包 Packages
  4. 【Flutter】自定义 Flutter 组件 ( 创建自定义 StatelessWidget、StatefulWidget 组件 | 调用自定义组件 )
  5. TensorFlow学习笔记之四(MNIST数字识别)
  6. 用MySQL Workbench工具分析OSSIM数据库
  7. spark基础之Spark SQL和Hive的集成以及ThriftServer配置
  8. python latex显示不出来_10 个加速Python数据分析的简单的小技巧
  9. 两步解决WIN7 下IE经常未响应的假死现象
  10. influence和effect的区别
  11. 读书笔记:《Scrum 敏捷软件开发》
  12. mysql查询95031班人数_MySQL的查询练习 - osc_1ngzqx2h的个人空间 - OSCHINA - 中文开源技术交流社区...
  13. 企业微信加密消息体_无代码开发能保障企业系统数据的安全吗?这篇文章为你全面解析!...
  14. 网页上生成一个印章。
  15. 最新精仿小刀娱乐资源网模板源码,带前台会员投稿审核功能
  16. 西北乱跑娃 --- windows下kill进程
  17. 为什么在牛市入市,反而会亏钱?
  18. 计算与推断思维 二、因果和实验
  19. WLAN从入门到精通—STA接入过程
  20. linux加入win7开机引导,windows下添加ubuntu系统引导

热门文章

  1. Ubuntu22降版本
  2. php 完全前后端分离使用jwt,前后端分离,在 angular 8 中利用 JWT 进行身份认证
  3. 海康威视Java开发第一步
  4. 6G需要1000亿个基站;5G套餐资费年内或降至50至60元;国内首款L4级5G无人驾驶汽车量产...
  5. arduino leonardo 入门
  6. 下载支付宝秘钥生成工具
  7. 不用找,你想要的游戏成套3d模型素材都在这里
  8. QT qq登陆界面设计
  9. FDTD solutions——TFSF(全场散射场)光源及斜入射
  10. 分水岭算法java,C++实现分水岭算法(Watershed Algorithm)