我是靠谱客的博主 闪闪期待,最近开发中收集的这篇文章主要介绍js中的var,let,const的区别,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

js中最熟悉的莫过于是var,这也是我们使用最多的,我们常用这个来声明全局变量,并且可以多次赋值,但是这也容易使定义的变量被污染:

1.先说下var:

var a = 1; //此处声明的变量a为全局变量
function test(){
var a = 2;//此处声明的变量a为函数foo的局部变量
console.log(a);//2
}
test();
console.log(a);//1

所以,一般使用var来定义全局变量,也可以反复定义。而且因为JS存在预解析的原因,会存在变量提升,列如:

console.log(a) // 打印出来是undefined,不会报错
var a = 1 

2.let 是es6中用来声明变量的,相比较于 var 来说不存在变量提升,同一作用域下不能重复定义:

let tt = 11
let tt =3
// 报错不能重复定义:VM75:2 Uncaught SyntaxError: Identifier 'tt' has already been declared
console.log(a) // 报错未定义
let a = 9
let b = 9
function kk (){
let b = 22
console.log(b) // 22 后被调用
}
console.log(b) // 9
先打印
kk()
let wo = 90
if(true){
let wo = 78
}
console.log(wo) // if 里面的变量是一个作用域,不受外面的定义的变量影响

3.最后一个就是const,也是es6中才有的,和let使用差不多,区别就是:const 定义的变量是只读性质的;

const bb // 没赋值,会报错。let 声明变量没赋值不会报错
const pp = 90
const pp = 80
// 会报错,不能重复定义,只读模式定义后不能再次重复定义
const kk = {}
kk.name = '小米'
// 不会报错,对象是一个地址,而不是具体的值,当对象添加属性后,具体地址会指向具体的值。

 

最后

以上就是闪闪期待为你收集整理的js中的var,let,const的区别的全部内容,希望文章能够帮你解决js中的var,let,const的区别所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(71)

评论列表共有 0 条评论

立即
投稿
返回
顶部