ECMAScript 6,es6 get和set的区别
2024-09-01 09:51:21
前言: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);
总结
当然,我这仅仅是简单举个例子,应该还有更多实用的语法。
最新文章
- C++成员初始化顺序
- modelsim(3) - tips(zt)
- -25299 reason: 'Couldn't add the Keychain Item.'
- javascript——touch事件
- WCF Concurrency (Single, Multiple, and Reentrant) and Throttling
- 使用ssh对服务器进行登录
- nodejs的重要支柱
- Eclipse RCP中超长任务单线程,异步线程处理
- logback.xml sql语句输出
- xss的一般防护措施(及CreateDefaultBuilder源码)
- map基本方法
- c++中vector类的用法
- 51nod 1443 路径和树(最短路树)
- webpack中loader和plugin的概念理解
- sessionStorage在项目中的应用
- NC 的高级应用
- camera按键采集图像及waitKey的用法
- map set iterator not incrementable 解决办法
- 使用codedom 编写脚本解释器
- GOlang eclipse install
热门文章
- 01-if条件语句之数字比较
- [转载]Linux服务器丢包故障的解决思路及引申的TCP/IP协议栈理论
- 【5min+】 一个令牌走天下!.Net Core中的ChangeToken
- js 完美运动框架
- C语言格式化输出
- 多个文件名大小写不同,是因为运行代码是大写E,用vscode运行的是小写e,解决方案:手动npm run dev #There are multiple modules with names that only differ in casing.
- IE8使用chrome内核渲染
- ASP.NET页面使用AjaxPro2完成JS调用后台方法
- MySQL:REPLACE函数的使用
- jQuery常用事件,each循环,引用当前时间