Es6基础(1)

1.let和const

(1)let:变量
console.log(a);
var a =1;
let a = 10;
console.log(a);
console.log(i);
for(var i = 0;i<10;i++){
   var a = i;
   console.log(i)//10
   console.log(a);//9
//i和a都能取得到,说明js中用var在for循环中声明的变量,可以在外部访问
}
for(let i = 0;i<10;i++){
   let a = i;
   console.log(i);
   console.log(a);
//let在js/es6中用let在for中声明的变量,无法在外部访问
}
var a =0;
let a =1;
console.log(a);
//let声明的变量,变量名不能重复,而且必须先声明后使用
//换句话来说,let没有变量的提升和变量污染
//块级作用域相当于局部作用域
//在js中只有函数才能创造一个局部作用域,但是在es中只要是个{},他都是局部作用域(块级作用域);函数不管在es中还是js中都是块级作用域
{
   var a  =0;
   let b=1;
}
  console.log(a);//0
  console.log(b);//报错,找不到变量b
let a =0;
{
  console.log(a);//不能先定义后使用
  let a = 1;
  console.log(a);//1
}
  console.log(a);//0
//js在全局声明的变量可以在局部环境下使用,但局部不能在全局下使用;
//es6中全局只能在全局使用,局部也只能在局部使用
//变量名都可以一样
//let声明的变量,只能在当前作用域使用
(2)const:静态常量
(1)const关键字在es6中用来声明用来声明静态常量
(2)常量所有字母必须大写
 const PI=3.1415926
    console.log(PI);
    PI=0;
    console.log(PI);//报错 常量无法修改

 const ABC;
    console.log(ABC);//报错,常量在声明时,必须赋值
    //const在作用域特性上跟let完全一样
//var声明的变量,是写在了window对象上,是window的属性或方法
//let声明的变量跟window完全没有关系
var aa = 0;
let aaa=1;
console.log(window);
//传参形式
  let ppp=123;
function fn1(p){
  let a = p;
  console.log(a);
}
fn(ppp);
//解构赋值
let [a,b,c]=[1,2,3];
console.log(a,b,c);
let [c,b,a]=[1,2,3];
console.log(a,b,c);

let arr = [1,2,3,4,5];
console.log(...arr);

 var arr=[1,2,3,4,5];
  arr1=arr;

 let arr =[1,2,3,4,5];
 arr1=arr;
 console.log(arr);
 console.log(arr1);

 let arr = [1, 2, 3, 4, 5];
    let arr1 = [];
    arr1 = [...arr];
    arr1.push(0)
    console.log(arr);
    console.log(arr1);

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言 ECMAScript 6.0(简称ES6)是 JavaScript 语言的下一代标准。它的目标,是使得 Ja...
    autumn_3d55阅读 557评论 0 1
  • 1.let 和 const let 和 var 的差异 let 允许声明一个在作用域限制在块级中的变量、语句或者表...
    不秃头的赖阅读 128评论 0 1
  • 定义 ES6, 全称 ECMAScript 6.0 ,是 JavaScript 的下一个版本标准,2015.06 ...
    青争小台阅读 244评论 0 0
  • 下面不属于ECMAScript规范的范围的是:( )A、 数据类型B、 语法C、 DOM事件D、 内置对象和函数的...
    亓凡阅读 3,010评论 3 9
  • 01.let和const。02.解构赋值。03.数据集合-set。04.数据集合map。05.Symbol。 01...
    雪妮爸爸阅读 1,008评论 0 0