变量的定义:让我们的代码不再"恶心"

为了更好的学习,我们打开babel有一个很贴息的学习工具
http://babeljs.io/repl/

let 有着比var 更”干净”的作用域
我们知道es2015之前变量的作用域是function。
比如
fuction showName(){
for(var i=0;i<=3;i++){}
alert(i); //很恶心的在外部也能访问到i
}
showName();
如果换成let则不一样了

超恶心的经典代码
function showName(){
alert(name); //undefined 狗一样的竟然不报错
var name;
}
这导致很多java、c++甚至php开发人员都想放弃。
用了let后则完全不一样了,其实就应该让它报错。

常见的注意点
1.不可重复定义
let name = “jack”;
name = “aaa”; //这样可以,但是再写一句 let name = “bbb” 不可以

2.多变量同时定义
let[name,age] = [“jack”,18];
alert(name);

use strict
这是在es5标准中定义的”严格模式”,对于我们的语法定义了一些限制和改变
“use strict”这句要写在你代码开头第一行
举例
1. name = “jack”; 这句话就会出错,因为name没有定义,除非你用var 定义
2.自执行匿名函数
{
alert(“jack”);
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值