- JS中适用typeof能得到的哪些類型
- 何時使用===何時使用==
- JS中有哪些内置函數
- JS變量按照存儲方式區分為哪些類型,并描述其特點
- 如何了解JSON
變量類型
- 值類型vs引用類型
- typeof 運算符詳解
//值類型
var a = ;
var b = a;
a = ;
console.log(b)//100
//引用類型
var a = {age:};
var b = a;
b.age = ;
console.log(a.age);//21
值類型指派時相當于把變量指派一份,是以兩個變量啊a,b是隔離的,互相不受影響;
引用類型相當于指向同一個對象,a,b指向同一個對象,那麼修改一個變量的屬性相當于修改引用對象的屬性,是以a,b會互相影響;
值類型:undefined string number Boolean
引用類型:對象,數組,函數;
引用類型有個特點可以無限擴充屬性;
JS中适用typeof能得到的哪些類型?
typeof undefined;//undefined
typeof 'abc';//string
typeof ;//number
typeof true;//boolean
typeof {};//object
typeof [];//object
typeof null;//object
typeof console.log;//function
前面4個是值類型,後面的引用類型;
typeof null是引用類型是因為null也是一個指針,但是它指向的是一個空對象;
typeof console.log可以檢測出是function類型是因為函數類型是js中一個很重要的存在。
typeof隻能區分值類型,不能區分引用類型;
如何判斷對象的資料類型?
JavaScript中有6中資料類型:string,boolean,object,null,undefind.number
方法一:typeof
typeof隻能區分值類型,不能區分引用類型,即隻能判斷string ,Boolean,null,undefined,number,其餘都傳回object,除了function外。
方法二:instanceof
用來判斷數組和對象,不能用于判斷string和Boolean。
方法三:constructor
數組和對象。
方法四:利用tostring()
object.prototype.toString().call()
方法五:利用jquery的 .isPlainObject(); . i s P l a i n O b j e c t ( ) ; .isArray(obj);$.isFunction(obj)進行判斷。
變量計算–強制類型轉換
- 字元串拼接
- == 運算符
- if語句
- 邏輯運算
== ‘’//true
== ''//true
null == undefined // true
var a = true;
if(a){
//}
var b = ;
if(b){}
//都會發生強制類型轉換
console.log(&&)//0
console.log(''||'abc')//abc
console.log(!window.abc)//true
//判斷一個變量會當做true還是false
var a = ;
console.log(!!a);
何時使用===何時使用==
在一般的判斷中我們都應該使用===,但是在代碼中obj.a==null代表obj.a===null || obj.a===undefined,是以隻有在判斷對象中某個屬性的時候用==null,其他地方都使用===。
js有哪些内置函數
object
function
Boolean
string
number
date
array
regexp
error
JS變量按照存儲方式區分為哪些類型,并描述其特點
引用類型 值類型
值類型的值指派後隔離的;
引用類型不會,他們引用的是同一個對象;
如何了解JSON
- 隻不過是一個對象而已,同時也是一個資料格式;
- 有兩個常用API
JSON.stringify({a:,b:})//對象轉化成字元串
JSON.parse({'a':,'b':})//字元串轉化成對象