时间:2021-05-18
let和const声明的变量只在代码块内有效
{let a = 10;var b = 1;}a // ReferenceError: a is not defined.b // 1不存在变量提升
变量一定要在声明后使用,否则报错
var tmp = 123;if (true) {tmp = 'abc'; // ReferenceErrorlet tmp;}不允许重复声明
// 报错function () {let a = 10;var a = 1;}块级作用域
function f() { console.log('I am outside!'); }(function () {if(false) {// 重复声明一次函数ffunction f() { console.log('I am inside!'); }}f();}());//I am inside! ES5 函数提升//I am outside! ES6 块级作用域const命令
声明一个只读的常量,一旦声明,常量的值就不能改变
一旦声明变量,就必须立即初始化,不能留到以后赋值
let命令、const命令、class命令声明的全局变量,不属于全局对象的属性
var a = 1;// 如果在Node的REPL环境,可以写成global.a// 或者采用通用方法,写成this.awindow.a // 1let b = 1;window.b // undefined下面再单独给大家介绍ES6之const命令
一直以来以ecma为核心的js始终没有常量的概念,es6则弥补了这一个缺陷;
const foo='foo';foo='bar';//TypeError: Assignment to constant variable.上例声明了一个基本类型的常量,如过试图修改初始值则会报错;如果是引用类型的值同样适用,但是有一点需要注意,举例说明:
正常报错,没毛病,再看:
这怎么没报错?而且还能修改成功? 这两个例子不一样的地方在于前者是修改了指针(需熟悉js 引用类型)对应的内容改变了,后者则不是指向依然没变 但是指向对象的内容发生改变了,对于foo而言我只是一个指针负责指向对应的对象 至于对象内容是什么就不管我的事了所以可以修改;如果不想让内容也改变也行使用另一个方法;
这样就不用担心被修改了;
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
ES6——let和const命令引言本文主要讲解ES6中变量的相关操作,变量的命名,讲解var、let、const三者的区别正文ES6中的let和const都是
本文实例讲述了ES6学习笔记之let与const用法。分享给大家供大家参考,具体如下:在ES6中不是var,而是通过let来声明变量,用const来声明常量,有
ES2015(ES6)新增加了两个重要的JavaScript关键字:let和const。let声明的变量只在let命令所在的代码块内有效。const声明一个只读
本文实例讲述了es6中let和const的使用方法。分享给大家供大家参考,具体如下:ES6新增了let命令,用来声明变量。它的用法类似于var,但是所声明的变量
本文主要介绍了深入浅出es6模板字符串,分享给大家,具体如下作为前端开发者避免不了根据后台数据的返回,组装html,渲染页面。举个栗子$('#result').