1. 直接量javascript
啥意思?直接量就是直接用到的數據~
例如:10,100,1.1,'Hello Word',true,false等等。java
2. 標識符與保留字函數
啥東西?標識符簡單講就是用來對變量和函數進行命名的,標識符不能夠以數字開頭,可使用字母和'_'和'$'開頭。那麼javascript自己也有本身的一些標識符,這些自己的標識符就能夠叫作保留字,是不容許咱們使用的,例如:break,return,var等等的這些那些~,不過在ES5(ECMAScript5)中還有一些作了保留,好比:class const enum export extends import super這些是爲將來版本作的預留,使用的時候要當心哦。code
3. 數字對象
表示:不區分整數和浮點數。ip
範圍:[-2^53 - 2^53];精度有限,超出Infinity,無心義NaN。字符串
浮點型:1.2 ; .3 == 0.3 ; 1.2e2 = 1.2 * 10^2。it
NaN:咋判斷一個值是否是NaN?經過x == NaN沒法判斷,不管x的值是什麼都返回false,須要經過x !=
x來判斷,當且僅當x爲NaN時表達式才返回true(或者使用isNaN());io
精度:第一次我會問精度?精度有限?計算機精確度也有限?試了一下還真是……好比(.3 - .2)你猜的多少?0.1?no no no!(.3console
.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()內部的聲明被提早到了函數最頂部。