美文网首页
学习ES6知识点01

学习ES6知识点01

作者: laura520 | 来源:发表于2019-07-08 11:29 被阅读0次

例一:

{

    let a=10;

    var b=1;

}

console.log(a);

console.log(b);

结果:// Uncaught ReferenceError: a is not defined  ;在执行a 结果输出时代码已经报错,因此b的结果已经被组织,b不能输出结果;

原因:

1、ES6中let命令只在所在的代码块中有效,所以a会报错;

2、a不是undefined,因为let所声明的变量一定要声明后才能使用,否则就会报错,let不存在变量提升;

//var 的情况

console.log(foo); //输出undefined

var foo=2;

console.log(foo); //输出 2

"var 存在变量提升,在没有声明变量之前,变量值undefined";

//let 情况

console.log(bar);//报错Uncaught ReferenceError: a is not defined

let bar=3;

var 变量可以在声明之前使用,值为undefined,let 所声明的变量一定要在声明之后使用,否则会报错。

ES6的特性,不存在变量提升、let只有在代码块局部有效。

例二:

var tmp=123;

if(true){

    let tmp;

    tmp="abc";

}

console.log(tmp);   

结果:123;

原因:变量名相同,let的复制也不会影响到var的全局;let 只在代码块中有效。

let 声明的tmp,打印出来的是 abc

var 声明的tmp,打印出来的是123

var tmp=123;

if(true){

let tmp;

tmp="abc";

   console.log(tmp)  // abc

}

console.log(tmp);   //123

但是在同一代码块中不允许重复变量

function func01(){

 let a=12;

 var a=3;

}

function func02(){

 let a=12;

 let a=3;

}

以上代码块都会报错;

相关文章

  • 学习ES6知识点01

    例一:{ let a=10; var b=1;}console.log(a);console.log(b); ...

  • ES6学习笔记(一)

    最近学习了ES6,被它更简洁的代码编写方式、面向对象以及模块化开发所吸引。ES6有一定的学习成本而且知识点比较琐碎...

  • 浅析JavaScript中的 this 指向

    前言 this指向是学习JavaScript必须理解的知识点,在ES6没有出现时,this是动态绑定的,或称为运行...

  • JSLearn

    JSLearn-ES6 'ES6语法学习' JavaScript基础知识剖析 01 变量与原型 01-01 变量类...

  • ES6详细讲解(二)

    今天接着学习ES6!!!接着上次来学习 第五个知识点:(...)拓展运算符 es5中赋值数组的方法:...

  • 简单总结ES6中的类定义语法和ES7的async/await

    学习ES6的类定义语法 基本知识点: ES6中定义类的方式, 就是ES5中定义类的语法糖,但虽然是语法糖,但是整体...

  • ES6 学习笔记(二)

    ES6 学习笔记,如有错误,欢迎指正。 笔记只记录了一些个人认为需要记住的知识点。 参考:ECMAScript 6...

  • 分步表单

    学习到的知识点如下: 1、ES6:解构- commit传过来一个对象,其中有两个属性。payload属性存在,如果...

  • 2020-05-24

    日常学习知识点总结(ES6篇) let 声明: 1、存在暂时性死区,没有预解析,不存在变量提升;必须先定义,再使用...

  • 近一万字的ES6语法知识点补充

    原文链接分享在我的掘金账号上近一万字的ES6语法知识点补充 前言 ECMAScript 6.0(简称ES6),作为...

网友评论

      本文标题:学习ES6知识点01

      本文链接:https://www.haomeiwen.com/subject/iqwnhctx.html