全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

关于ES6的六个小特性(二)

前言

Javascript 团体的每个人都喜欢新的API,语法更新以及特性,它们提供了更好的,更智能,更有效的方式以完成重要的任务。

继上一篇的 《简单谈谈ES6的六个小特性》,这次我再分享6个可以减少代码和最大化效率的方法。

1.Object Shorthand

新的对象声明方法允许我们可以不声明对象的 key :

var x = 12;
var y = yes;
var z = {one:'1',two:'2'};

// The old way
var obj = {
 x:x,
 y:y,
 z:z
}
// The new way
var obj = {x,y,z};

2.Method Properties

避免 function 关键字声明函数:

var davidwalsh = {
 makeItHappen(param){
 // do stuff
 }
}

必须承认去除掉 function 关键字确实使代码简洁、更好维护。

3.Blocks vs Immediately Executed Functions

下面创建立即执行方法的模式有点难看:

(function(){
 // do stuff
})();

通过ES6我们可以通过 {} 和 let 来创建块级作用于,完成立即执行函数的作用:

{
 let j = 12;
 let divs = document.querySelectorAll('div');

 // do stuff
}

j; // ReferenceError: j is not defined...

如果在 Block 内部声明函数,它将会被外部访问到。但你如果使用 let 关键字声明函数自变量,将不使用括号的情况下实现 IEF 的功能。

4. for loops and let

因为在JS里面会存在变量提升,我们经常会在作用域前面声明一些”无用”的迭代变量,例如(for var x = …)。ES6 使用 let 解决了此恼人的问题:

for(let x = 0; x < len; i++){
 //do stuff
}

x; // ReferenceError: x is not defined

不久以后 let 会被应用的更多。

5.get and set for Classes

class Cart{
 constructor(total){
 this._total = total;
 }
 get total(){return this._total;}
 set total(v){this._total = Number(v);}
}

var cart = new Cart(100);

cart.total // 100

能为属性设置 get、set 是这部分最棒的。不需要使用函数来进行特殊的设定–当执行 obj.prop = {value} 时,一切都会自动执行。

6.startsWith,endsWith and includes

"MooTools".startsWith("Moo"); // true;
"MooTools".startsWith("moo"); // false;

"MooTools".endsWith("Tools"); // true;

"MooTools".includes("oo"); // true;

注:includes 方法兼容性还是很多,曾有一个线上bug,就是因为不支持此方法导致的。

原文:https://davidwalsh.name/es6-features-ii/amp

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。


# es6的新特性  # es6新特性  # es6特性  # ES6新特性之模块Module用法详解  # ES6新特性之解构、参数、模块和记号用法示例  # ES6中非常实用的新特性介绍  # 简单谈谈ES6的六个小特性  # ES6的新特性概览  # ES6新特性之字符串的扩展实例分析  # ES6新特性之函数的扩展实例详解  # ES6新特性之Symbol类型用法分析  # ES6(ECMAScript 6)新特性之模板字符串用法分析  # ES6新特性之变量和字符串用法示例  # ES6中module模块化开发实例浅析  # 我们可以  # 将会  # 不需要  # 每个人  # 不久以后  # 一切都  # 会在  # 这部  # 线上  # 我再  # 不支持  # 这篇文章  # 上一篇  # 但你  # 能为  # 将不  # 曾有  # 最棒  # 可以减少  # 更有效 


相关文章: html制作网站的步骤有哪些,iapp如何添加网页?  小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?  武清网站制作公司,天津武清个人营业执照注销查询系统网站?  如何通过cPanel快速搭建网站?  如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法  定制建站如何定义?其核心优势是什么?  学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?  湖北网站制作公司有哪些,湖北清能集团官网?  建站主机系统SEO优化与智能配置核心关键词操作指南  移民网站制作流程,怎么看加拿大移民官网?  淘宝制作网站有哪些,淘宝网官网主页?  实现虚拟支付需哪些建站技术支撑?  济南网站制作的价格,历城一职专官方网站?  详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)  建站主机默认首页配置指南:核心功能与访问路径优化  如何通过免费商城建站系统源码自定义网站主题与功能?  免费公司网站制作软件,如何申请免费主页空间做自己的网站?  如何自定义建站之星网站的导航菜单样式?  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  网站好制作吗知乎,网站开发好学吗?有什么技巧?  C#如何在一个XML文件中查找并替换文本内容  如何确认建站备案号应放置的具体位置?  济南网站建设制作公司,室内设计网站一般都有哪些功能?  建站主机解析:虚拟主机配置与服务器选择指南  C++如何将C风格字符串(char*)转换为std::string?(代码示例)  公众号网站制作网页,微信公众号怎么制作?  如何选择网络建站服务器?高效建站必看指南  如何在IIS7上新建站点并设置安全权限?  c# await 一个已经完成的Task会发生什么  建站之星后台密码遗忘如何找回?  官网自助建站系统:SEO优化+多语言支持,快速搭建专业网站  微信推文制作网站有哪些,怎么做微信推文,急?  怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?  外贸公司网站制作哪家好,maersk船公司官网?  如何用5美元大硬盘VPS安全高效搭建个人网站?  如何制作一个表白网站视频,关于勇敢表白的小标题?  微网站制作教程,我微信里的网站怎么才能复制到浏览器里?  如何通过二级域名建站提升品牌影响力?  网站企业制作流程,用什么语言做企业网站比较好?  建站之星如何取消后台验证码生成?  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  C#如何使用XPathNavigator高效查询XML  上海网站制作网站建设公司,建筑电工证网上查询系统入口?  网站专业制作公司有哪些,做一个公司网站要多少钱?  焦点电影公司作品,电影焦点结局是什么?  建站主机数据库如何配置才能提升网站性能?  建站之星云端配置指南:模板选择与SEO优化一键生成  如何快速生成高效建站系统源代码?  如何在宝塔面板中创建新站点?  如何在万网自助建站平台快速创建网站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。