变量
1) js是弱类型的语言
Js 是弱类型语言
1) 变量的数据类型在初始化的时候
2) 变量的数据类型可以随时发生改变
3) 类型细分不明显
var a; a = 2; a = “二”
Java 是强类型语言
1)变量的数据类型在声明的时候确定
2)变量的数据类型一定确定不能更改
int a; a = 2;
String b ; b = "hello world"
double c = 2.5;
2) var 用于声明变量
let 变量
let a = 3;
a++;
const 常量
const a = 3;
1. 变量可以重复声明
var a = 3;
var a = "hello world"
2. 变量声明会被提升 (函数的声明也会)
console.log(a);
var a = 3;
3. var声明的变量没有局部作用域
function foo(){
if(true){
var a = 3;
console.log("inner",a);
}
console.log("outer",a);
}
foo();
3)let 用于声明变量
特点:a.只在let声明的代码块内有效,避免全局污染
b.没有变量声明提升
c.暂时性死区
d.不允许重复声明
4)const 用于声明常量
特点:a.不可以重新赋值
b.声明的同时必须初始化
c.暂时性死区
d.不允许重复声明
e.只在当前的代码块内有效
f.声明不可以提升