ES6初识- Class】的更多相关文章

默认值 function test(x,y='world'){ console.log('默认值'); } function test2(...arg){ for(let v of arg){ console.log("rest",v); } } test2(1,2,3,4,5,'a');   箭头函数 let arrow =v=>v*2; console.log('arrow',arrow(3));//6 尾调用---性能优化的过程中,嵌套过多 function tail(x)…
数组解构赋值 [a,b]=[1,2]; . 方法返回 function f(){ return [1,2] } let a,b; [a,b]=f();//a=1,b=2   function f1(){ return [1,2,3,4,5] } let a,b; [a,b]=f();//a=1,b=2   [a,,...b]=f1();//a=1;b=[3,4,5]   对象解构赋值   {a,b=1}={a:1,b:2}        …
Symbol的概念 变量是独一无二的 let a1=Symbol(); let a2=Symbol(); a1和a2严格意义不相等 let a3=Symbol.for('a3'); let a4=Symbol.for('a3'); console.log(a3===a4);   如果在对象中使用Symbol变量,就可以用Object.getOwnPropertySymbols(obj).forEach(function(tiem){   })   or   Reflect.OwnKeys(obj…
Set的用法 元素不能重复--唯一性 WeakSet key值只能是对象 没有clear属性 Map let map=new Map([['a',123],['b',456]]);; WeakMap let o={}; weakmap.set(o,123); console.log(weakmap.get(o)); Map与Array的对比  …
{ let obj={ time:'2017-03-11', name:'net', _r:123 };   let monitor=new Proxy(obj,{ // 拦截对象属性的读取 get(target,key){ return target[key].replace('2017','2018') }, // 拦截对象设置属性 set(target,key,value){ if(key==='name'){ return target[key]=value; }else{ return…
{ //基本定义和生成实例 class Parent{ //构造函数 constructor(name='lisi'){ this.name=name; } //属性get,set get longName(){ return 'china'+this.name; } set longName(value){ this.name=value; }     } class Child extends Parent{ constructor(name='Child'){ super(name); t…
开始先按照个插件 npm install babel-plugin-transform-decorators-lagacy --save-dev 1.扩充和修改类的行为 2.修改的行为@readonly 在方法的前面进行标志 3.第三方哭修饰器js库,core-decorators; npm install core-decorators --save-dev…
export let A=123; export function test(){ console.log('test'); } export class Hello(){ test(){ console.log('class'); } }     import (A,test,Hello) from './class/lesson' or import * as lesson from ''./class/lesson'     export 导出 import 导入   or other M…
ES6 初识 ES6 是 ECMAScript 6.0 的简写,即 JavaScript 语言的下一代标准,已经在 2015年6月正式发布了,它的目标是让JS能够方便的开发企业级大型应用程序,因此,ES6的一些规范正在逐渐向Java.C# 等后端语言标准靠近.在 ES6 规范中,比较重大的变化有以下几个方面: 新增 let.const 命令 来声明变量,和var 相比,let 声明的变量不存在变量提升问题,但没有改变JS弱类型的特点,依然可以接受任意类型变量的声明:const 声明的变量不允许在…
一.ES6常用语法 1.变量的定义 1. 介绍 ES6以前 var关键字用来声明变量,无论声明在何处都存在变量提升这个事情,会提前创建变量. 作用域也只有全局作用域以及函数作用域,所以变量会提升在函数顶部或全局作用域顶部. let 关键字表示变量,const 表示常量.都是块级作用域,比如一个函数内部,代码块{}内部~ 不会报错: <script> console.log(age); var age = 18; </script> <script> function f…