经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » JS/JS库/框架 » JavaScript » 查看文章
ECMA6新增语法(待续...)
来源:cnblogs  作者:等到晴天  时间:2019/11/8 13:41:03  对本文有异议

块级作用域:  ES6允许你使用块级作用域,不过目前大多数的ES6语法只允许在严格模式下使用("use strict” )。

1 let关键字

    作用:声明变量,一个花括号就是一个作用域(每个花括号内就是全新变量).

    特点:不在进行声明提升,在块作用域外无法访问变量,和const一样只能声明一次.

    关键字:let , const,function,class ES6下都可以以块为作用域 借鉴:https://blog.csdn.net/kittyjie/article/details/50337031

  1. //var 声明的变量作用在定时器外的函数里的
  2. for(var i=0; i<5; i++){
  3. setTimeout(function(){
  4. alert(i);
  5. },1000);
  6. }
  7. //因为let以花括号作为作用域,for每次循环的时候都会重新let一个变量 理解let在for循环中:https://zhuanlan.zhihu.com/p/51966830
  8. //let变量作用在括号,且外部无法访问
  9. for(let i=0; i<5; i++){
  10. setTimeout(function(){
  11. alert(i);
  12. },1000);
  13. }

 

2 const声明常量

      作用:定义一个常量

      特点:不会声明提升,以块为作用域,值无法更改,只能声明一次.

  1. //将对象设置为常量,它的值是可以修改的
  2. //因为我们常量的值,只是在栈内存中保存的指向对象的指针 数据类型的栈和堆内存:https://www.cnblogs.com/liveoutfun/p/8962019.html
  3. const obj = {a:1,b:2,c:3}
  4. obj.a = 100;
  5. console.log(obj.a); //10

 

3 箭头函数

     作用:通过简洁的格式声明一个函数

  特点:比传统函数格式简洁(省略了function,return,单个形参时括号),且this指向是上级函数的指向

  

  1. //普通函数声明格式
  2. var a = function(){
  3. return 1+1;
  4. }
  5. //箭头函数声明格式
  6. var a = x =>{
  7.   1 + 1;
  8. }
  9. //多个参数
  10. var a = (x,y,z) =>{
  11.   1 + 1;
  12. }

4 Destructuring解构

      作用:可以通过解构方式来取值

  1. //一般定义变量写法
  2. var x=10,y=20,z=30;
  3. //解构赋值允许你给多个变量赋值
  4. let [x,y,z] = [10,20,30];
  5. let [x,[a,b],y] = [10,[15,18],20];
  6. 这并不是在定义数组,而是通过等号两边的结构匹配,进行赋值。
  7. //解构赋值允许你少取一个值:
  8. let [x,y] = [10,20,30]; //结果x=10,y=20
  9. let [x,[a,b],y] = [10,[5],20]; //结果x=10,a=5,y=20,b=undefined
  10. 浏览器并不会报错,依然赋值成功。
  11. //可以使用对象不按照顺序取值
    var {id,name,age} = {name:'yt',age:30,id=30}
  1. //用途
  2. //可以方便的交换两个变量的值
  3. [a,b] = [b,a];
  4. //可以一次为多个变量取值
  5. [a,b] = () =>{ return [1,2] }
  6. //对象格式可以不考虑取值顺序
  7. {a,b,c} = {b:1,a:2,c:3}
  8. //从数组或对象的某一项
  9. var {a:NewName} = obj; //对象
  10. var [0:NewName] = arr; //数组

总结:数组格式的可以批量取值,对象格式的可以打乱顺序取值

5 字符串的一些方法

      作用:ECMA6字符串可以更快捷的拼接字符串

  1. //快捷的字符串拼接
  2. var str = `我是ECMA${变量、表达式}字符串`
  3. //字符串中的换行不会报错
  4. var str = `
  5. 不会报错!!
  6. `

6 数组的一些方法

    Array.from(伪数组)  //可以将伪数组转换为数组

 Array.copyWithin(被替换元素下标,截取开始下标,截取结束下标); //复制元素替换元素(一条龙服务)

 Array.find(function(value,index,arr){ return value > 10 })  //和过滤类似,只找一次符合条件的元素. 

    findIndex(function(value, index, arr){}) //和find类似,不过返回的是符合一次要求的元素的下标

7 Object.assign

    Object.assign({a:1},{b:2},{b:4,c:3}); //将相同的属性合并,返回一个独立属性对象

8 第七种数据类型Symbol

9 Set和Map集合

10 Map集合,即映射

原文链接:http://www.cnblogs.com/qingtianya/p/11819368.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号