ECMAScript 6,es6 get和set的区别

 前言:ECMAScript 6是什么

一个常见的问题是,ECMAScript 和 JavaScript 究竟是什么关系?

要讲清楚这个问题,须要回顾历史。1996 年 11 月,JavaScript 的创造者 Netscape 公司,决定将 JavaScript 提交给标准化组织 ECMA,但愿这种语言可以成为国际标准。次年,ECMA 发布 262 号标准文件(ECMA-262)的初版,规定了浏览器脚本语言的标准,并将这种语言称为 ECMAScript,这个版本就是 1.0 版。

该标准从一开始就是针对 JavaScript 语言制定的,可是之因此不叫 JavaScript,有两个缘由。一是商标,Java 是 Sun 公司的商标,根据受权协议,只有 Netscape 公司能够合法地使用 JavaScript 这个名字,且 JavaScript 自己也已经被 Netscape 公司注册为商标。二是想体现这门语言的制定者是 ECMA,不是 Netscape,这样有利于保证这门语言的开放性和中立性。

所以,ECMAScript 和 JavaScript 的关系是,前者是后者的规格,后者是前者的一种实现(另外的 ECMAScript 方言还有 JScript 和 ActionScript)。平常场合,这两个词是能够互换的。

 示例

先说get (getter)按我本身的理解,就是

类的属性成了动态的(个人语言能力有限---)、比较官方的说法就是 get语法将对象属性绑定到查询该属性时将被调用的函数。浏览器

 

class satan{
//能够return返回字符串 成为当前对象status的string属性 get status() {
return "有了更搞的扩展性,能够动态设置属性"; }
//也能够这样用
satans = {
a:'a',b:'b',c:'c'
}
get init()
{
return this.satans.a //string a
} }
//实例化 satan = new satan(); //控制台打印 console.log(satan.status);

 

还有个setter 用法也是和上面的差很少

const satan = {
   blog:[],
  set push(data)
{
  this.blog.push(data)
}  
}
satan.push('aa');
//控制台打印 array aa
console.log(satan.blog);

总结

固然,我这仅仅是简单举个例子,应该还有更多实用的语法。

相关文章
相关标签/搜索