ECMAScript6语法
Posted type_Y
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ECMAScript6语法相关的知识,希望对你有一定的参考价值。
- 为什么要学习ES6
- ES6也叫ECMAScript2015,2015-6月正式发布,向下兼容ES5.1
- ES6来编写Node.js程序
- ES6让javascript语言能够开发复杂应用程序
-
严格模式
- ES5中出现的模式
-
严格模式的目的:
- 消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为;
- 消除代码运行的一些不安全之处,保证代码运行的安全;
- 提高编译器效率,增加运行速度;
- 为未来新版本的Javascript做好铺垫
-
参考
严格模式的限制:https://jsmean.com/blog/post/55a9db88a0367a75336e8884
严格模式的限制:http://www.cnblogs.com/jiqing9006/p/5091491.html
-
-
开启严格模式
- 在作用域的最上面 "use strict"
- js文件的最开头
- function的开头
- 在作用域的最上面 "use strict"
-
-
变量和常量
-
变量 let
- 没有变量提升,必须先定义再使用
- 有块级作用域
-
解决问题
-
window.onload = function () { var ul = document.getElementById("list"); var lis = ul.getElementsByTagName("li"); for(let i = 0, length=lis.length; i < length; i++) { // (function (i) { // lis[i].onclick = function () { // console.log(i); // } // })(i); lis[i].onclick = function () { console.log(i); } } }
- 常量 const
- 常量的一旦赋值,不能改变
- 有块级作用域
- 没有变量提升,先定义再使用
- 不可以重复定义
- 必须有初始值,否则报错
- 在Node.js中,所有接收require()获得的对象都使用const修饰
- string的扩展方法
- includes() 返回布尔值,是否包含,第二个参数从第几个位置开始查找
- startsWith() 返回布尔值,是否以...开头,第二个参数从第几个位置开始查找
- endsWith() 返回布尔值,是否以...结尾,第二个参数, 前n个字符以...结尾
- repeat() 重复次数
- 模板
- 示例一:
-
let name = "steve jobs"; let str = `hello ${name}`;
示例二:
-
let obj = {name:"jobs", age: 18, salary: 1}; let template = ` 姓名:${obj.name} 年龄:${obj.age} 工资:${obj.salary} `.trim();
以上是关于ECMAScript6语法的主要内容,如果未能解决你的问题,请参考以下文章