概述Proxy与Reflect是ES6为了操作对象引入的API。Proxy可以对目标对象的读取、函数调用等操作进行拦截,然后进行操作处理。它不直接操作对象,而是像代理模式,通过对象的代理对象进行操作,在进行这些操作时,可以添加一些需要的额外操作。Reflect可以用于获取目标对象的行为,它与Object类似,但是更易读,为操作对象提供了一种更优雅的方式。它的方法与Proxy是对应的。基本用法Proxy一个Proxy对象由两个部分组成:target、handler。在通过Proxy构造函数生成实例对象时,需要提供这两个参数。target即目标对象,handler是一个对象,声明了代理target
概述Proxy与Reflect是ES6为了操作对象引入的API。Proxy可以对目标对象的读取、函数调用等操作进行拦截,然后进行操作处理。它不直接操作对象,而是像代理模式,通过对象的代理对象进行操作,在进行这些操作时,可以添加一些需要的额外操作。Reflect可以用于获取目标对象的行为,它与Object类似,但是更易读,为操作对象提供了一种更优雅的方式。它的方法与Proxy是对应的。基本用法Proxy一个Proxy对象由两个部分组成:target、handler。在通过Proxy构造函数生成实例对象时,需要提供这两个参数。target即目标对象,handler是一个对象,声明了代理target
数值的表示二进制表示法新写法:前缀0b或0B。console.log(0b11===3);//trueconsole.log(0B11===3);//true八进制表示法新写法:前缀0o或0O。console.log(0o11===9);//trueconsole.log(0O11===9);//true常量Number.EPSILONNumber.EPSILON 属性表示1与大于1的最小浮点数之间的差。它的值接近于 2.2204460492503130808472633361816E-16,或者 2-52。测试数值是否在误差范围内:0.1+0.2===0.3;//false//在误差范围内即
数值的表示二进制表示法新写法:前缀0b或0B。console.log(0b11===3);//trueconsole.log(0B11===3);//true八进制表示法新写法:前缀0o或0O。console.log(0o11===9);//trueconsole.log(0O11===9);//true常量Number.EPSILONNumber.EPSILON 属性表示1与大于1的最小浮点数之间的差。它的值接近于 2.2204460492503130808472633361816E-16,或者 2-52。测试数值是否在误差范围内:0.1+0.2===0.3;//false//在误差范围内即
对象字面量属性的简洁表示法ES6允许对象的属性直接写变量,这时候属性名是变量名,属性值是变量值。constage=12;constname="Amy";constperson={age,name};person//{age:12,name:"Amy"}//等同于constperson={age:age,name:name}方法名也可以简写constperson={sayHi(){console.log("Hi");}}person.sayHi();//"Hi"//等同于constperson={sayHi:function(){console.log("Hi");}}person.sayHi(
对象字面量属性的简洁表示法ES6允许对象的属性直接写变量,这时候属性名是变量名,属性值是变量值。constage=12;constname="Amy";constperson={age,name};person//{age:12,name:"Amy"}//等同于constperson={age:age,name:name}方法名也可以简写constperson={sayHi(){console.log("Hi");}}person.sayHi();//"Hi"//等同于constperson={sayHi:function(){console.log("Hi");}}person.sayHi(
数组创建Array.of()将参数中所有值作为元素形成数组。console.log(Array.of(1,2,3,4));//[1,2,3,4]//参数值可为不同类型console.log(Array.of(1,'2',true));//[1,'2',true]//参数为空时返回空数组console.log(Array.of());//[]Array.from()将类数组对象或可迭代对象转化为数组。//参数为数组,返回与原数组一样的数组console.log(Array.from([1,2]));//[1,2]//参数含空位console.log(Array.from([1,,3]));//[