1.变量及声明
javaScript中变量的声明有三种var,let,const
1.var 在es2015之前,js中使用var(js弱类型语言,不用标注变量类型,ts中需要标注)来声明所有变量。
var q = 234;
声明提升问题(在使用var声明变量时,代码运行前会把var声明的变量提升到代码前面)
console.log(q);//undefined
var q = 1;
代码块中声明变量问题
if(true){
var q =4;
}
console.log(q); //4
2.let 声明块作用域变量解决了声明提升和代码块声明问题
(function fun(){
console.log(p); // p is not defined
let p = 10;
if(true){
let q =4;
}
console.log(q); //q is not defined
})();
3.const 声明一个只读变量,常用作定义常量
(function fun(){
const PI = 3.14;
PI = 10;
console.log(PI) //TypeError:Assignment to constant variable.
//有时在声明对象时会使用到。
})();
2.数据类型
ES最新定义了8种数据类型
1.七种基本类型
1.布尔类型(Boolean)
let q = true;
2.字符串(String)
let q = "";
3.数字(Number)
let num = 2.12;
4.null
let foo = null;
5.undefined
let und;
6.Symbol
let sym = Symbol();
7.BigInt
let bn = 99999999999999999999999999999999999999999999999999999999999999999999999999999999n;
or
BigInt(bn)
2.对象Object
let p = {};
let q = [];
let fun = function(){}