ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

ECMAScript 6.0新特性

2022-04-22 21:05:03  阅读:213  来源: 互联网

标签:console log 作用域 特性 let ECMAScript 6.0 var 声明


ECMAScript 6.0 (以下简称ES6, ECMAScript是一种由Ecma国际(前身为欧洲计算机制造商协会,英文名称是 European Computer Manufacturers Association)通过ECMA-262标准化的脚本程序设计语言)一种脚本语 言的标准,已经在2015年6月正式发布了,并且从ECMAScript6开始,开始采用年号来做版本。即ECMAScript 2015,就是ECMAScript6它的目标,是使得JavaScript语言可以用来编写复杂的大型应用程序,成为企业级开发语 言。每年一个新版本。

一、let&const

我们以后会经常使用let来声明一个变量,还有一个const常量(声明之后不允许改变,一旦声明必须初始化, 否则报错)

 1、通过var定义的变量,作用域是整个封闭函数,是全域的 。通过let定义的变量,作用域是在块级或是子块中。

for (let i = 0; i < 10; i++) {
  // ...
}

console.log(i);
// ReferenceError: i is not defined
//计数器i只在for循环体内有效,在循环体外引用就会报错。
2、变量提升现象:浏览器在运行代码之前会进行预解析,首先解析函数声明,定义变量,解析完之后再对函数、变量进行运行、赋值等。
-不论var声明的变量处于当前作用域的第几行,都会提升到作用域的头部。
-var 声明的变量会被提升到作用域的顶部并初始化为undefined,而let声明的变量在作用域的顶部未被初始化
// var 的情况
console.log(foo); // 输出undefined
var foo = 2;
//相当于
var foo;  //声明且初始化为undefined
console.log(foo);
foo=2;

// let 的情况
console.log(bar); // 报错ReferenceError
let bar = 2;
//相当于在第一行先声明bar但没有初始化,直到赋值时才初始化

 3、var可以声明多次,let只可以声明一次

        var a=1
        var a=3
        let b=2  // 报错
        let b=4  // 报错
        console.log(a)
        console.log(b)
           

4、数组解构

        // 数组的解构
        let arr=[1,2,3];

        let a=arr[0];
        let b=arr[1];
        let c=arr[2];
        console.info(a,b,c)

        // ES6: 数组的解构表达式
        let[aa,bb,cc]=arr;
        console.info(aa,bb,cc)

 

标签:console,log,作用域,特性,let,ECMAScript,6.0,var,声明
来源: https://www.cnblogs.com/timetriesall/p/16177127.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有