当前位置: 首页 > news >正文

贵州住房城乡建设厅官方网站学校网站三合一建设方案

贵州住房城乡建设厅官方网站,学校网站三合一建设方案,那个公司可以做网站,网页设计与制作的实训报告怎样写今天看到一个面试题#xff0c; 让下面解构赋值成立。 let [a,b] {a:1,b:2} 如果我们直接在浏览器输出这行代码#xff0c;会直接报错#xff0c;说是 {a:1,b:2} 不能迭代。 看了es6文档后#xff0c;具有迭代器的就一下几种类型#xff0c;没有Object类型#xff0c;…今天看到一个面试题 让下面解构赋值成立。 let [a,b] {a:1,b:2} 如果我们直接在浏览器输出这行代码会直接报错说是 {a:1,b:2} 不能迭代。 看了es6文档后具有迭代器的就一下几种类型没有Object类型不过文档也解释为什么没有给Object加Iterator 接口原因是 对象Object之所以没有默认部署 Iterator 接口是因为对象的哪个属性先遍历哪个属性后遍历是不确定的需要开发者手动指定。本质上遍历器是一种线性处理对于任何非线性的数据结构部署遍历器接口就等于部署一种线性转换。不过严格地说对象部署遍历器接口并不是很必要因为这时对象实际上被当作 Map 结构使用ES5 没有 Map 结构而 ES6 原生提供了。 原生具备 Iterator 接口的数据结构如下。 ArrayMapSetStringTypedArray函数的 arguments 对象NodeList 对象 所以我们回头看这道面试题是不是只要给这个{a:1,b:2}加上一个迭代器函数就可以了。 let [a,b] {a:1,b:2} 这里我们看下迭代器是什么使用的在es6里有一个  Symbol.iterator 属性只要有这个属性那么这个数据结构就是可以遍历的。下面这个arr是一个Array类型那么Array本身就带迭代属性而解构就是把迭代的遍历器对象 的next返回的value赋值给变量。 let arr [1, 2, c3]; let iter arr[Symbol.iterator]();iter.next() // { value: 1, done: false } iter.next() // { value: 2, done: false } iter.next() // { value: 3, done: false } iter.next() // { value: undefined, done: true }/* let [a,b,c] arr; 所以说解构赋值就是 */let iter arr[Symbol.iterator](); let a iter.next().value; let b iter.next().value; let c iter.next().value; 利用这一点我们可以这样写  let [a, b] {a: 1,b: 2,[Symbol.iterator]() {var arr Object.values(this);return arr[Symbol.iterator]()}} 优化  Object.prototype[Symbol.iterator] function() {var arr Object.values(this);return arr[Symbol.iterator]()}let [a, b] {a: 1,b: 2} 那么在这个基础上我们在完成下面这个题如果让 a 使用for...of...打印出a.data里的值 let a {data: [1,2,3,4,5,6]}for(let k of a){// 打印 1,2,3,4,5,6} let a {data: [1, 2, 3, 4, 5, 6]}a[Symbol.iterator] function() {let _this this;let index 0return {next() {if (index _this.data.length) {return {value: _this.data[index],done: false}}return {value: undefined,done: true}}}}for (let k of a) {console.log(k)}
http://www.hkea.cn/news/14310672/

相关文章:

  • 晋江市规划局建设网站工程建设企业等采用
  • 专业做能源招聘的网站wordpress时间有问题
  • iis6.0不能新建网站wordpress繁體模板
  • 新乡市建设路小学网站网站建设网站维护网站外包
  • 制作网站一般多少钱邯郸房产网官网
  • 互动广告机网站建设怎么做企业的网站
  • 门户网站建设和推广网站建设推广群
  • 适合女生做的网站凡科建站官网地址
  • 北京专业网站翻译影音字幕翻译速记速记速记快而高效免费设计装修公司
  • 做写字楼的网站有哪些网站制作在哪能看
  • 怎么做网站移植网站全国建筑行业资质平台查询官网
  • 免费开源企业网站做网站网站内容怎么找
  • 高端网站建设专业公司三好街做网站的公司
  • 龙岗做棋牌网站建设ftp怎么连接网站空间
  • 作图网站做课程表开发公司补偿物业公司物业费协议
  • 网站维护要什么wordpress自动建议搜索引擎不抓取
  • 商业网站图片网站设计宽屏
  • 山东网站建设工作室网站建设营销型网站
  • 长沙做网站备案网站建设汇报稿
  • 网站标题关键词云上铺会员管理系统
  • 网站建设维护资质购物网站的开发
  • 如何做枪版电影网站人力资源网
  • 网站的关键词怎么设置跳转网站
  • 网站建设合同 免责声明创业平台有哪些
  • 管理网站 开发电子商务公司的名字
  • 做综合医院网站大望路做网站的公司
  • 做网站怎么开发客户源上海网站开发与设
  • 汉中做网站公司wordpress本地上传视频资料
  • 卖主机网站搜索引擎营销的概念
  • 专业建站公司主要做什么h5网页设计软件