0
点赞
收藏
分享

微信扫一扫

let, const,var 区别

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>Document</title>
	</head>
	<body>
		<script>
		var a  = 1;
		console.info(a);
		
		// const b=3
		const b =2;
		console.info(b)
		
		let c =4
		console.info(c)
		</script>
		
	</body>
</html>

1.var 变量可以用window 点出来

例如:

var a = 100;
console.log(a,window.a);    // 100 100

而,let 和const 不可以

let b = 10;
console.log(b,window.b);    // 10 undefined

const c = 1;
console.log(c,window.c);    // 1 undefined

2. var 可以变量提升

 什么是变量提升?,就是可以先使用,后声明

console.log(a); // undefined  ===>  a已声明还没赋值,默认得到undefined值
var a = 100;

而,let 和 const 不可以

console.log(b); // 报错:b is not defined  ===> 找不到b这个变量
let b = 10;

console.log(c); // 报错:c is not defined  ===> 找不到c这个变量
const c = 10;

 

3.同一作用域下,var 可以声明同名变量,而let 和const 不可以

var a = 100;
console.log(a); // 100

var a = 10;
console.log(a); // 10

et a = 100;
let a = 10;

//控制台报错:Identifier 'a' has already been declared  ===> 标识符a已经被声明了。

4.var 有跨域的可能

{
var a  = 1;
const b =2;	
}
console.info(a);
console.info(b)
//控制台报错==》
//1
//ncaught ReferenceError: b is not defined

var 正常获取 数据, const 报错,ES6以后script 更规范

5.const 声明以后必须赋值,声明后不能修改,而let 可以  const 是常量,let 是变量

举报

相关推荐

0 条评论