CSDN话题挑战赛第2期
参赛话题:学习笔记

  目录

2.1.let 关键字

2.2. const 关键字


2.1.let 关键字

let 关键字用来声明变量,使用 let 声明的变量有几个特点:

  1. 不允许重复声明

  2. 块儿级作用域

  3. 不存在变量提升

  4. 不影响作用域链

  5. 应用场景:以后声明变量使用 let 就对了

let声明变量:

let a;
let b,c,d;
let e = 100;
let f = 521, g='iloveyuo', h=[];

1. 变量不能重复声明 (var可以重复声明)

let star = 1;
let star = 2;
var b = 3;
var b = 4;
a  // Identifier 'a' has already been declared
b  // 4

2. 块级作用域

作用域:块级作用域、全局作用域、函数作用域、eval

{let girl = '周扬青';
}
console.log(girl);

{var girl = '周扬青';
}
console.log(girl);

let——块级作用域:其作用域为该语句所在的代码块内,只在代码块{}中有效,在外面无法读取。 var——非块级作用域,其作用域为该语句所在的函数内,代码块{}外也能访问。

✨for 循环计数器很适合用 let

for (var i = 0; i < 10; i++) {setTimeout(function(){console.log(i);})
}
// 输出十个 10
for (let j = 0; j < 10; j++) {setTimeout(function(){console.log(j);})
}
// 输出 0123456789

变量 i 是用 var 声明的,在全局范围内有效,所以全局中只有一个变量 i, 每次循环时,setTimeout 定时器里面的 i 指的是全局变量 i ,而循环里的十个 setTimeout 是在循环结束后才执行,所以此时的 i 都是 10。

变量 j 是用 let 声明的,当前的 j 只在本轮循环中有效,每次循环的 j 其实都是一个新的变量,所以 setTimeout 定时器里面的 j 其实是不同的变量,即最后输出 12345。(若每次循环的变量 j 都是重新声明的,如何知道前一个循环的值?这是因为 JavaScript 引擎内部会记住前一个循环的值)。

3. 不存在变量提升

console.log(song);
let song = '恋爱达人';

(一) ES6 新特性 ——let与const关键字相关推荐

  1. ES6新特性02-const关键字

    ES6新特性02-const关键字 文章目录 ES6新特性02-const关键字 一.const关键字的使用 一.const关键字的使用 一定要赋初始值 一般常量使用大写(潜规则) 常量的值不能修改 ...

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

    以往版本的JS中,如果你在if中定义一个变量,这个变量在if外部也是可以访问的,而不管if条件是否被执行,如: if(false){ var x = "hello JShaman" ...

  3. 实战 es6_Node.JS实战64:ES6新特性:Let和Const

    以往版本的JS中,如果你在if中定义一个变量,这个变量在if外部也是可以访问的,而不管if条件是否被执行,如: if(false){ var x = "hello JShaman" ...

  4. html5 跳转参数不显示_HTML5、CSS3、ES6新特性总结

    前言:HTML5.CSS3.ES6新特性,可以说是基础前端的面试的必考题了,以下是关于新特性的基本总结. HTML5: 语义化的区块和段落元素:<section>,<article& ...

  5. 尚硅谷es6新特性笔记

    尚硅谷es6新特性笔记 一.let与const let的变量声明以及声明特性 const的变量声明以及声明特性 const.let.var 三者之间的区别 二.变量解构赋值 三.模板字符串 四.对象的 ...

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

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

  7. ES6新特性----面试

    ES6新特性 关键字 let关键字 const关键字 解构赋值 变量的解构赋值 数组的解构赋值 对象的解构赋值 字符串的解构赋值 数值和布尔值的解构赋值 函数参数的解构赋值 用途 模板字符串 箭头函数 ...

  8. ES6新特性16-Class

    ES6新特性16-Class 文章目录 ES6新特性16-Class 一.Class介绍和初体验 二.class静态成员 三.构造函数继承 四.子类对父类方法的重写 五.get和set 一.Class ...

  9. ES6新特性(部分语法)

    ES6新特性 文章目录 ES6新特性 1.0let关键字 1.1let小案例 1.2const关键字 1.3解构赋值 1.4模板字符串 1.5简化对象写法 1.6箭头函数 1.7箭头函数的案例 1.7 ...

最新文章

  1. PHP权重算法-用于游戏根据权限来随机物品
  2. 【算法竞赛学习】气象海洋预测-Task4 模型建立之 TCNN+RNN
  3. Apollo的基本概念和集成实战
  4. 再谈网络字节顺序,大小端问题
  5. 团队项目前期冲刺-7
  6. SPSS软件安装与常见入门问题
  7. jQuery 前端操作
  8. Verilog除法器的设计总结
  9. python求平方根的代码_python求平方根的方法
  10. 关于安装ANACONDA遇到的无法定位动态链接库问题
  11. 计算机断电无法启动不了系统,电脑因为强制断电导致系统无法正常启动的解决办法...
  12. 在线Word文档怎么做—使用超级文档一站式解决
  13. wireshark抓包使用教程
  14. Flutter实现网易音乐登录页的波纹效果
  15. android动手写平滑滚动歌词控件
  16. 学习历程-----postgreSql
  17. 基于java+ssm+mysql的大学生考勤管理系统及智能分析系统
  18. ChatGPT Plus 会员续费扣款失败如何处理
  19. java win10窗口启动假死_win10电脑任务栏和窗口假死怎么办_win10任务栏和窗口假死的解决方法...
  20. Win10系统通用串行总线(USB驱动损坏)的一种解决方法

热门文章

  1. Xilinx 28nm FPGA (7系列FPGA)技术概述
  2. JAVA输出数组元素的三种方法(for/for each/toString)
  3. 精仿某宝源码 无加密版本
  4. SDKMAN 软件开发工具包管理器
  5. 【历史上的今天】2 月 23 日:Enigma 密码机申请专利;戴尔电脑创始人出生;Mellanox 收购 EZchip
  6. 有关Nmap指令的翻译
  7. html input 只读
  8. mysql性能监控,配置文件优化
  9. The Promise of a New Beginning
  10. 华为离职副总裁透露​年薪千万的工作感悟(建议收藏)