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

购物网站建设策划报告推广型网站开发软件

购物网站建设策划报告,推广型网站开发软件,网页设计基础题库,网架公司招聘打板施工队伍ES6(ECMAScript 6)是JavaScript语言的最新版本,它在ES5的基础上做了很多增强和扩展#xff0c;使JavaScript的编程模式更加现代化和优雅,不仅拓展了语言表达能力,也为编程带来了全新的编程范式和思维方式。在项目中使用ES6,让代码更加简洁、方便模块化和面向对象实现等#x…ES6(ECMAScript 6)是JavaScript语言的最新版本,它在ES5的基础上做了很多增强和扩展使JavaScript的编程模式更加现代化和优雅,不仅拓展了语言表达能力,也为编程带来了全新的编程范式和思维方式。在项目中使用ES6,让代码更加简洁、方便模块化和面向对象实现等进而提高开发效率、减少代码量。 ES6 常用新特性如下 let/const箭头函数模板字符串解构赋值模块化类和继承默认参数rest参数扩展运算符Promise迭代器等SymbolIteratorGeneratorProxy 以下是一些ES6常见的知识点和示例代码 let和const let用于声明块级作用域变量const用于声明常量,常量必须初始化 let x 1; if (x 1) {let x 2; // 这个x只在If语句块内有效console.log(x); // 输出2 } console.log(x); // 输出1const PI 3.14159; PI 1; // 错误,PI是常量箭头函数 更简洁的函数书写方式继承当前上下文的this关键字 const add (a, b) a b;const obj {value: 1,getPlusValue: function(b) {return this.value b; // this绑定到obj},getPlusValueES6: (b) {return this.value b; // this继承外层上下文} }模板字符串 用反引号 标识可以当作普通字符串使用,也可以用来定义多行字符串,或者在字符串中嵌入变量/表达式 let name Bruce; console.log(Hello ${name}); // Hello Brucelet str This is a multi-line string; // 多行字符串解构赋值 可以从数组或对象中提取值,对变量进行赋值 let arr [1, 2, 3]; let [a, b, c] arr; console.log(a, b, c); // 1 2 3let obj {name: Bruce, age: 30}; let {name, age} obj; console.log(name, age); // Bruce 30模块导入导出 使用 export 导出模块中的变量、函数或类使用 import 导入其他模块中的部分或全部 // module.js export const name Bruce; export function sayHi() {console.log(Hi); }// app.js import { name, sayHi } from ./module.js; console.log(name); // Bruce sayHi(); // Hi类和继承 使用 class 关键字定义类使用 extends 关键字实现继承支持静态方法和构造器 class Animal {constructor(name) {this.name name;}sayName() {console.log(My name is ${this.name});} }class Dog extends Animal {constructor(name) {super(name); // 调用父类构造函数}bark() {console.log(Woof Woof!);} }let dog new Dog(Buddy); dog.sayName(); // My name is Buddy dog.bark(); // Woof Woof!默认参数值 在定义函数时可以为参数设置默认值 function say(messageHi) {console.log(message); }say(); // Hi say(Hello); // Hellorest参数 用于获取函数的实参,存入数组中 function add(...nums) {let sum 0;for(let n of nums) {sum n;}return sum; }console.log(add(1,2,3)); // 6 console.log(add(4,5,6,7,8,9)); // 39spread操作符 可以在函数调用/数组构造时将数组表达式展开 let params [3,5,1]; console.log(Math.max(...params)); // 5 console.log([...hello]); // [h,e,l,l,o]对象字面量扩展 可以直接在对象中添加函数属性名可以是变量/表达式可通过扩展运算符复制对象的可枚举属性 let obj {name: Bruce,sayName() {console.log(this.name);},[Symbol.iterator]: function() {// ...} }let obj2 { ...obj, age: 30 }; // 复制obj所有可枚举属性到obj2Promise 异步编程的一种解决方案代表一个异步操作的最终结果 let promise new Promise(function(resolve, reject) {setTimeout(function() {resolve(Hello World);}, 2000); });promise.then(function(value) {console.log(value); // Hello World });for…of循环 可以遍历各种可迭代对象(Array、Map、Set等) let arr [a, b, c]; for(let x of arr) {console.log(x); // 依次输出a, b, c }Map和Set Map是存储key-value对的有序集合Set是不重复值的有序集合 let map new Map(); map.set(name, Bruce); map.set(age, 30); console.log(map.get(name)); // Brucelet set new Set(); set.add(1); set.add(5); set.add(5); // 重复的5会被忽略 console.log(set.size); // 2好的,我继续介绍一些ES6其他常见的知识点: Symbol 一种新的原始数据类型,可作为对象属性的标识符每个Symbol值都是不相等的 let symbol1 Symbol(id); let symbol2 Symbol(id); console.log(symbol1 symbol2); // falselet obj {}; obj[symbol1] Hello; console.log(obj[symbol1]); // Hello迭代器Iterator 为各种数据结构提供统一的访问接口支持对象实现Iterator接口,从而可以用for…of遍历 let arr [a, b, c]; let iter arr[Symbol.iterator]();console.log(iter.next()); // { value: a, done: false } console.log(iter.next()); // { value: b, done: false } console.log(iter.next()); // { value: c, done: false } console.log(iter.next()); // { value: undefined, done: true }生成器Generator 可以暂停执行的函数通过yield关键字交还控制权配合Iterator可实现惰性运算 function* idGen() {let id 0;while(true) {yield id;} }let gen idGen(); console.log(gen.next().value); // 0 console.log(gen.next().value); // 1代理Proxy 用于修改某些操作的默认行为等同于在语言层面做出修改,可以对编程语言进行拓展 let obj { name: Bruce }; let proxy new Proxy(obj, {get(target, prop) {console.log(Reading ${prop});return target[prop];},set(target, prop, value) {console.log(Setting ${prop} to ${value});target[prop] value;} });proxy.name; // Reading name, Bruce proxy.name Clark; // Setting name to Clark反射Reflection 将对象内部特征反射于外部可操作,与Proxy形成映射ES6新增Reflect对象与Proxy相呼应 Reflect.getPrototypeOf({}) Object.getPrototypeOf({}); Reflect.get(obj, name) obj.name;
http://www.hkea.cn/news/14566297/

相关文章:

  • 自己建网站的详细步骤wordpress主机cdn
  • 中国外贸网站网络工程师证书考试时间
  • 服务态度 专业的网站建设网站二级栏目数量
  • 个人网站 flashseo搜索优化费用
  • 网站推广的途径和方法开发者模式开着好不好
  • 天宁寺网站建设免费seo公司
  • 网站运营与数据分析深圳公司官网设计
  • 网站设计 英文html网站怎么搭建
  • 欧美男女直接做的视频网站网站开发公司的销售方式
  • 郑州网站建设最好广告学是热门还是冷门
  • 资讯型电商网站优缺点长沙一站式网站建设
  • 深圳市住建局工程交易服务网网站关键词优化实验结果分析
  • 松江区环保局网站建设项目备案网站设计图尺寸
  • 做网站选云服务器内核网站开发入那个科目
  • 一个网站怎么做pc和移动端怎么做区块链媒体网站
  • 服装怎么做网站推广天津智能网站建设
  • 南安市住房和城乡建设部网站网站行业关键词
  • 冠县网站制作seo的研究对象
  • 威海做网站的哪家好网页设计综合案例
  • 建设网站请示宣传怎么设计app
  • 企业网站的建立网络虚拟社区时对于企业建设通查询中标
  • 免费的ppt下载网站男女做暧视频网站免费
  • 旅行网站开发意义网站分享到朋友圈
  • 网站制作手机棋牌游戏平台
  • 做明星粉丝网站赤峰做网站
  • 合肥网络科技有限公司做网站泉州关键词排名seo
  • 做教育的网站有哪些律师事务所网站设计
  • 企业网站开发工具百度销售平台
  • 做电影网站的流程网站大全浏览器
  • 做网站推广排名dw软件