1. 直接量
啥意思?直接量就是直接用到的数据~
比方:10,100,1.1,’Hello Word’,true,false等等。
2. 标识符与保存字
啥东西?标识符简朴讲就是用来对变量和函数举行定名的,标识符不能够以数字开首,能够运用字母和’_’和’$’开首。那末javascript自身也有本身的一些标识符,这些自身的标识符就能够叫做保存字,是不允许我们运用的,比方:break,return,var等等的这些那些~,不过在ES5(ECMAScript5)中另有一些做了保存,比方:class const enum export extends import super这些是为将来版本做的预留,运用的时刻要警惕哦。
3. 数字
示意:不辨别整数和浮点数。
局限:[-2^53 – 2^53];精度有限,超越Infinity,无意义NaN。
浮点型:1.2 ; .3 == 0.3 ; 1.2e2 = 1.2 * 10^2。
NaN:咋推断一个值是否是NaN?经由过程x == NaN没法推断,不管x的值是什么都返回false,须要经由过程x !=
x来推断,当且仅当x为NaN时表达式才返回true(或许运用isNaN());精度:第一次我会问精度?精度有限?盘算机精确度也有限?试了一下还真是……比方(.3 – .2)你猜的若干?0.1?no no no!(.3
.2 == 0.09999999999999998,一个无穷靠近0.1的数值,所以在金融盘算的时刻,就用分来盘算吧,正确些~)。
4. 字符串
誊写:'ab';
'a\
b';
上方的两个字符串出输出花样雷同,均为单行字符串;
5. null和undefined
比较: null == undefined //true;
null === undefined //false;
为啥?来看这个↓
typeof null //Object;
typeof undefined //undefined;
6. 不可变的原始值和可变的对象
不可变的原始值:
var v = “hello”;
v.toUpperCase();//HELLO
v //hello可变的对象:
var a = [1,2,3];
a[0] == 11;对象的比较:
var a = [1,2,3],b = [1,2,3];
a == b //false
//对象是援用范例(referenve)比较的是援用,只要基于同一个对象(用一个援用)的时刻才会想等;
7. 声明提早
直接来个简朴的DEMO:
var a = "global";
function go(){
console.log(a);//undefined
var a = "local";
console.log(a);//local
}
a在go()内部的声明被提早到了函数最顶部。