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

微网站建设网络怎么搞一个服务器建设网站

微网站建设网络,怎么搞一个服务器建设网站,建设银行网站的特点分析,字体设计图片素材目录 迭代器 Iterator 的作用 Iterator 的遍历过程 Set Map集合 map和对象区别? async异步函数 迭代器 迭代器#xff08;Iterator#xff09;就是这样一种机制。它是一种接口#xff0c;为各种不同的数据结构提供统一的访问机制。任何数据结构只要部署Iterator接口Iterator就是这样一种机制。它是一种接口为各种不同的数据结构提供统一的访问机制。任何数据结构只要部署Iterator接口就可以完成遍历操作即依次处理该数据结构的所有成员。 Iterator 的作用 为各种数据结构提供一个统一的、简便的访问接口 使得数据结构的成员能够按某种次序排列 ES6创造了一种新的遍历命令for...of循环Iterator接口主要供for...of消费。 Iterator 的遍历过程 创建一个指针对象指向当前数据结构的起始位置。也就是说遍历器对象本质上就是一个指针对象。 第一次调用指针对象的next方法可以将指针指向数据结构的第一个成员。 第二次调用指针对象的next方法指针就指向数据结构的第二个成员。 不断调用指针对象的next方法直到它指向数据结构的结束位置。 /*** 数组 keys values entries* 方法全部返回迭代器对象 就可以使用 for of遍历* 迭代器接口本质就是调用迭代器对象的next方法 指针 * 调用next方法会依次指向内部成员*/ let arr [1,2,3,4,5]; let keys arr.keys(); let values arr.values(); let entries arr.entries(); console.log(keys.next()); //{ value: 0, done: false } console.log(keys.next()); //{ value: 1, done: false } console.log(keys.next()); //{ value: 2, done: false } console.log(keys.next()); //{ value: 3, done: false } console.log(keys.next()); //{ value: 4, done: false } console.log(keys.next()); //{ value: undefined, done: true } // console.log(values.next()); // console.log(entries.next()); // let result; // while(!(result keys.next()).done){ // console.log(result.value); //这里用keys.next() 会再次执行一次 // }console.log(keys,values,entries); for(let key of keys){console.log(key,key); } for(let value of values){console.log(value,value); } for(let entry of entries){console.log(entry,entry); }function test(){// arguments 是迭代器对象for(let key of arguments){console.log(key);} } test(1,2,3,4,5) 原生具备 Iterator 接口的数据结构如下     Array、Map、Set、String、TypedArray、arguments、NodeList  我们还可以把原来不是可迭代的数据类型变成可迭代的这样就能支持for...of循环啦比如说objct!如果我们直接对对象执行for...of肯定会出错 let obj {name:zhangsan,age:12 }for(let key of obj){ //报错 obj is not iterableconsole.log(key); } let obj {name:zhangsan,age:12 }// for(let key of obj){ //报错 obj is not iterable // console.log(key); // } let keys Object.keys(obj); console.log(keys); for(let key of keys){console.log(key); } Set Set类似于数组但是成员的值都是唯一的没有重复的值。Set 本身是一个构造函数用来生成 Set 数据结构。Set 构造函数可以接受一个数组或者具有 iterable 接口的其他数据结构作为参数用来初始化。 /*** set集合* 特点:内部成员值是唯一的* 参数:无或者实现了迭代器接口的数据结构 数组 字符串* 创建使用set构造函数 new Set() typeof*/ let set new Set(); // console.log(set,typeof(set),set instanceof Object); // 添加内部成员 add // 注意:如果是基本数据类型相同的值添加两次会自动去重 // 如果是引用数据类型 会添加多次 (引用地址不同) set.add(hello); set.add(world); set.add(hello); let arr1 []; set.add(arr1); set.add([]); console.log(set);// 删除内部成员delete // 注意:删除引用数据类型的时候如果是内容则无法删除 是指向地址的变量则可以删除 set.delete([]); //无法删除 set.delete(arr1); //可以删除 console.log(set);// 遍历set集合 console.log(set.keys()); console.log(set.values()); console.log(set.entries()); for(let key of (set.keys())){console.log(key); } set.forEach((key,value){console.log(key,value); })/*** has 检验set集合有没有该内部成员* 引用数据类型最好放引用地址*/ console.log(set.has(hello)); console.log(set.has([]));/*** 属性* 查看set内部成员个数 size*/ console.log(set.size); let obj {}; set.add(obj); console.log(set.size);/*** 应用 数组去重 set*/ let set1 new Set([1,2,3,4,3,2,1]); console.log(set1); let res1 Array.from(set1); console.log(res1); console.log(set1[0]); let res2 Array.prototype.slice.call(set1,0); console.log(res2);let res3 [...set1]; console.log(res3);let set2 new Set(hello); console.log(set2); Map集合 Map类似于对象也是键值对的集合但是“键”的范围不限于字符串各种类型的值包括对象都可以当作键。也就是说Object 结构提供了“字符串—值”的对应Map结构提供了“值—值”的对应是一种更完善的 Hash 结构实现。如果你需要“键值对”的数据结构Map 比 Object 更合适。Map 可以接受一个数组作为参数。该数组的成员是一个个表示键值对的数组。 /*** 键值对的一种数据结构 键可以是任意数据类型*/ let obj {name:zhangsan,age:12,[Symbol(email)]:123456qq.com, } obj[{}] 1; //期望出现{} 1 结果出现[object Object] 1 let res Object.entries(obj); let map new Map(res); console.log(map,typeof map,map instanceof Object); map.set({},1); map.set([],function(){}); map.set(undefined,hello); console.log(map); /*** 遍历map keys values entries forEach*/ console.log(map.keys()); console.log(map.values()); console.log(map.entries());for(let key of map){console.log(key,22222); }map.forEach((key,value){console.log(key,value); })map.forEach((key,value){console.log(value,key,value是值,key是键); })console.log(map.size); // 删除某一个属性 map.delete(name); console.log(map); // 获取属性键对应的值 console.log(map.get(age)); console.log(Map.prototype); console.log(Set.prototype);map和对象区别? 1.map键可以是任意数据类型对象键只能是字符串或者symbol值     2.map可以使用for...of遍历,实现了迭代器接口     3.对象只能使用for in 循环遍历 因为没有实现迭代器接口     4.map可以直接调用forEach方法进行遍历     5.map的键值对数量可以直接通过size属性获取对象需要手动获取     6.map更适合键值对频繁删除map做了一些优化     7.map内部键值对有序对象属性是无序。 async异步函数 async函数是使用async关键字声明的函数。 async函数是AsyncFunction构造函数的实例 并且其中允许使用await关键字。async和await关键字让我们可以用一种更简洁的方式写出基于Promise的异步行为而无需刻意地链式调用promise。 await关键字只在async函数内有效。如果你在async函数体之外使用它就会抛出语法错误 SyntaxError 。async/await的目的为了简化使用基于promise的API时所需的语法。async/await的行为就好像搭配使用了生成器和promise。async函数一定会返回一个promise对象。如果一个async函数的返回值看起来不是promise那么它将会被隐式地包装在一个promise中。 简单来说 是一个函数是一个异步编程解决方案内部封装了generator函数是一个语法糖内部自带执行器与await配合使用异步编程同步处理。 !DOCTYPE html html langenheadmeta charsetUTF-8meta http-equivX-UA-Compatible contentIEedgemeta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/titlescript srchttps://cdn.bootcdn.net/ajax/libs/axios/1.3.6/axios.js/script /headbodyscriptasync function getFindAll() {try {let res await axios.get(http://121.199.0.35:8888/index/carousel/findAll);console.log(res);} catch {throw new Error(请求失败)} finally {console.log(请求完成);}}getFindAll();/script /body/html
http://www.dnsts.com.cn/news/46717.html

相关文章:

  • 网站打开速度慢是什么原因北京动力 网站建设
  • 给被k的网站做友链什么语言网站比较安全
  • 龙华大浪做网站网站关键词优化排名外包
  • 福州建设网站建设网站公司怎么分工
  • 网站歌曲代码怎样建设网站是什么
  • 无锡网站策划郑州企业网站模板建站
  • 学校网站开发4人小组分工付网站开发费用要计入什么科目
  • 个人网站的制作代码最好的企业网站源码
  • 开发网站用什么语言最好吗一建报考条件
  • 留学生做留服证明在哪个网站郴州市住房建设局门户网站
  • 建设网站有什么作用网站建设与维护是什么意思
  • 福建建设人才市场网站二级域名发放免费
  • h5网站模板wordpress 主题漏洞
  • 网站建设专题页面wordpress装修网插件
  • seo网站推广简历门户手机网站开发
  • 宁波网站建设详细方案模板wordpress首页太慢
  • 简单的英文网站模板推广软文范文
  • 北京哪家做网站和网络推广好的湖北正规网站建设质量保障
  • 精选聊城做网站的公司苏州品牌网站制作公司
  • 做视频的网站那几个盈利了色彩 导航网站
  • 金融审核网站制作广告策划方案怎么做
  • 邹城网站建设多少钱网址怎么申请
  • 网站在哪里建立肇庆市有那家做网站的
  • 如何建设自己的企业网站秦淮网站建设
  • 忽悠别人做商城网站自己做的网站如何发布
  • 上海化工网站建设选择网站模板注意事项
  • 网站开发语言 .net免费seo网站诊断
  • 宝安建设投资集团网站个人网页设计师
  • 做炭化料的网站常州金坛建设局网站
  • 做基金哪个网站好企业网站服务器多少钱