javascript - Array.keys相关问题

查看:66
本文介绍了javascript - Array.keys相关问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

问题1:
Array.keys()返回的是一个iterator对象

var arr = ['a','b','c'];
toString.call(arr.keys()); //返回的是"[object Array Iterator]" iterator对象

但为什么调用掉用arr.keys().next() 一直是返回Object {value: 0, done: false}
而如果把它赋值给变量
var iterator = arr.keys();
调用iterrator.next(),则返回正常?

问题2:
arr = [...arr.keys()]这里的'...'是什么意思

解决方案

  1. 每次你call arr.keys()都生成新的Array Iterator, 所以每次arr.keys().next()永远返回数组第一个index. 把iterator赋值给变量,这样你每次使用的都是同一个iterator而非建立的新iterator,这样自然结果就对了

  2. 这是展开运算符,它用来进行变量展开, 具体用法参照https://developer.mozilla.org...

这篇关于javascript - Array.keys相关问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆