资讯专栏INFORMATION COLUMN

js中var、let、const的区别

Yuqi / 2950人阅读

摘要:中的区别主要内容是中三种定义变量的方式,,的区别。定义的变量可以修改,如果不初始化会输出,不会报错。正确错误,必须初始化函数外定义有输出值函数外修改定义无法输出是常量,不可改变,一般大写,也是块级作用域。。。

js中var、let、const的区别
主要内容是:js中三种定义变量的方式const, var, let的区别。
var定义的变量可以修改,如果不初始化会输出undefined,不会报错。
var a = 1;
// var a;//不会报错
console.log("函数外var定义a:" + a);//可以输出a=1
function change(){
a = 4;
console.log("函数内var定义a:" + a);//可以输出a=4
} 
change();
console.log("函数调用后var定义a为函数内部修改值:" + a);//可以输出a=4
var分为两种:局部作用域和函数作用域
let是块级作用域,函数内部使用let定义后,对函数外部无影响。
let c = 3;
console.log("函数外let定义c:" + c);//输出c=3
function change(){
let c = 6;
console.log("函数内let定义c:" + c);//输出c=6
} 
change();
console.log("函数调用后let定义c不受函数内部定义影响:" + c);//输出c=3
let是块级作用域,跟var不同的是,let没有前置功能,不能重复声明
const定义的变量不可以修改,而且必须初始化。
const b = 2;//正确
// const b;//错误,必须初始化 
console.log("函数外const定义b:" + b);//有输出值
// b = 5;
// console.log("函数外修改const定义b:" + b);//无法输出 
const是常量,不可改变,一般大写,也是块级作用域。。。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/87140.html

相关文章

  • 总结下varletconst 区别

    摘要:前言和的区别是老生常谈,看到网上一些文章的总结,有的不太全面,甚至有的描述不太准确,在这里尽量全面的总结下这三者的区别。最后以上大概是总结后的内容,看来,还是多用吧。 前言 var 和 let 的区别是老生常谈,看到网上一些文章的总结,有的不太全面,甚至有的描述不太准确,在这里尽量全面的总结下这三者的区别。 let 是 ES6新增的变量类型,用来代替 var 的一些缺陷,跟 var...

    pingink 评论0 收藏0
  • JSletvar区别

    摘要:打印错误配合循环的独特应用非常适合用于循环内部的块级作用域。看一个常见的面试题目同步注册回调函数到异步的宏任务队列。是循环体内局部作用域,不受外界影响。 1. 定义变量 声明语法 var upperA = A; let upperB = B; const upperC = C; 只声明不初始化的结果,【const定义的常量不可以修改,而且必须初始化。】 // var 声明变量 ...

    wenshi11019 评论0 收藏0
  • 深入理解letvar区别(暂时性死区)!!!

    摘要:会出现这样的情况是因为拥有暂时性死区。规定暂时性死区和语句不出现变量提升,主要是为了减少运行时错误,防止在变量声明前就使用这个变量,从而导致意料之外的行为。 首先我们应该知道js引擎在读取js代码时会进行两个步骤: 第一个步骤是解释。 第二个步骤是执行。 所谓解释就是会先通篇扫描所有的Js代码,然后把所有声明提升到顶端,第二步是执行,执行就是操作一类的。 我们先来看个简单的变量提升...

    tanglijun 评论0 收藏0
  • 字面量、变量、常量 let const理解

    摘要:常量与字面量的区别常量与字面量均不会被改变。常量为存储数据的容器,而字面量为等号右侧的值,字面量是由字符串,数字等构成的字符串或数值。在中,标识符用于命名变量以及关键词函数和标签。 之前竟然对常量、字面量都没有搞清楚,要学习的真的是好的 刚才终于搞清楚了 是该好好在学一遍js的 字面量:在编程语言中,一般固定值称为字面量,如 3.14。 不是一种值,而是一种变量记法 ...

    gplane 评论0 收藏0
  • 2019面试笔记

    摘要:使用构造函数创建对象后,新对象与构造函数没有关系了,新对象的属性指向的是构造函数的原型对象。构造继承使用父类的构造函数来增强子类的实例,等于是在子类的构造函数内部执行。 一.js原始类型: 在js中,存在着6种原始值: * boolean * number * string * undefined * null * symbol 注意: 虽然typeof null输出的是o...

    nidaye 评论0 收藏0

发表评论

0条评论

Yuqi

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<