以往版本的JS中,如果你在if中定义一个变量,这个变量在if外部也是可以访问的,而不管if条件是否被执行,如:
if(false){
var x = "hello JShaman"
}
console.log(x);
执行这段代码不会失败、不会报错,但会输出undefined:

这情况很可能会引起bug,而且很难找出原因。
在ES6(即:ES2015)中,为了解决这个隐患,引入了let关键字。Let定义的变量,只在自身所在的作用域生效果。修改上述代码如下:
if(false){
let x = "hello JShaman"
}
console.log(x);
执行,即会报错:

而且,let还可以广泛的应用在for循环中,如:
for(let i=0; i<10; i++){
console.log("JS代码混淆,就用JShaman代码混淆加密平台");
}
console.log(i);
这时执行同样会报错:i未定义。
ES6还新增了一个const关键字,用于定义常量:
const x = "JShaman:JS代码混淆加密平台";
x = "hello jshaman";
执行将会出错,因为试图改变一个常量的值 。

但并不意味着赋值是恒定不变的,用例子来说明:
const x = {};
x.name = "JShaman";
console.log(x);
这个执行是没有问题的:

但如果这样操作是不行的:
const x = {};
x = "JShaman";
执行会出错:

小提示:实际使用时,用const定义三方模块是非常适合的。

js中执行到一个if就停止的代码_Node.JS实战64:ES6新特性:Let和Const。相关推荐

  1. js中执行到一个if就停止的代码_Node 中如何引入一个模块及其细节

    在 node 环境中,有两个内置的全局变量无需引入即可直接使用,并且无处不见,它们构成了 nodejs 的模块体系: module 与 require.以下是一个简单的示例 const fs = re ...

  2. 在React.js中执行反跳

    本文翻译自:Perform debounce in React.js How do you perform debounce in React.js? 您如何在React.js中执行反跳? I wan ...

  3. js中json法创建对象(json里面的:相当于js里面的=)

    js中json法创建对象(json里面的:相当于js里面的=) 一.总结 json里面的:相当于js里面的= 4.json创建js对象解决命名冲突:多个人为同一个页面写js的话,命名冲突就有可能发生, ...

  4. java解析shell命令_Android中执行java命令的方法及java代码执行并解析shell命令

    这篇文章给大家介绍Android中执行java命令的方法及java代码执行并解析shell命令,需要的朋友一起学习 android中执行java命令的方法大家都晓得吗,下面一段内容给大家带来了具体解析 ...

  5. vscode vue解决跨域_在vs code 中如何创建一个自己的 Vue 模板代码

    首先,在vs code 中打开定义模板代码的地方 第一步,点击"设置"图标按钮,在弹出的菜单中点击的"用户代码片段"(也就是模板) 第二步,在弹出的框中选择新建 ...

  6. C#实现在CAD图纸中插入另一个DWG图块的代码

    C#实现在CAD图纸中插入另一个DWG图块的代码PromptPointResult ppr = ed.GetPoint("请选择插入点:"); Point3d pt = ppr.V ...

  7. 【javascript基础——系列10】js中隐藏元素的几种方法以及代码

    系列文章 [javascript基础--系列1]前端页面ajax连接后台服务器传输数据 [javascript基础--系列2]前端页面axios连接后台服务器传输数据 [javascript基础--系 ...

  8. lsdyna如何设置set中的node_list_如何快速掌握es6+新特性及核心语法?

    国庆刚刚结束,我们开始一波新的学习进程吧. ECMAScript 6.0(以下简称ES6)是JavaScript语言的下一代标准,已经在2015年6月正式发布了.作为前端必备技能,我们来快速开始吧 接 ...

  9. js es6 新特性

    前言 ES6的发布,主要是为了解决 ES5 的先天不足,而新增了很多新特性,来提高开发人员的效率,那下文就讲讲有哪些新特性 目录 前言 一.汇总-图谱 二.常用的新特性 1.const 和 let 2 ...

最新文章

  1. 美观又实用,10 款强大的开源 Javascript 图表库
  2. 如何加快Json 序列化?有哪些方法?
  3. 第8章 随风飘动的粒子 (《Python趣味创意编程》教学视频)
  4. “物联网”中,少了这项技术,会损失多少,算过吗!
  5. 操作系统—进程的定义、组成和组织方式(思维导图)
  6. 一、tkinter简介
  7. 线性定常系统的离散化
  8. Chrome插件(扩展)开发全攻略
  9. dockerfile的端口映射
  10. 利用微搭低代码操作微信缓存
  11. ftp服务器与共享文件对比,ftp服务器与共享的区别
  12. 谈谈Line-height的深入理解 与 应用
  13. E站账号cookie分享_产品经理必懂知识点—cookie和session
  14. 高德地图轨迹回放功能
  15. 任意多边形的面积计算
  16. 2021-WWW-Learning Intents behind Interactions with Knowledge Graph for Recommendation
  17. 树状数组讲解(简洁好懂)
  18. 安装在我的电脑上的 TeamViewer 到底安全吗?
  19. 数学建模学习(29):matlab求解微分方程组详细讲解,代码+案例讲解,学不会找我!
  20. 后端程序员之路 11、初高中数学复习

热门文章

  1. grantrevoke
  2. 临渊羡鱼,不如退而结网
  3. MySQL隐藏换行符的处理
  4. Linux下常用 60个命令
  5. cdn加速怎么样刷新文件
  6. MySQL事务效率测试
  7. C2146和C4430错误:循环引用错误
  8. MySQL—更改索引
  9. 想一下,最大公约数怎么求
  10. python学习第十节(yield表达式的应用+内置函数)