淺談js基本數(shù)據(jù)類(lèi)型和typeof
JavaScript數(shù)據(jù)類(lèi)型是非常簡(jiǎn)潔的,它只定義了6中基本數(shù)據(jù)類(lèi)型
•null:空、無(wú)。表示不存在,當(dāng)為對(duì)象的屬性賦值為null,表示刪除該屬性
•undefined:未定義。當(dāng)聲明變量卻沒(méi)有賦值時(shí)會(huì)顯示該值。可以為變量賦值為undefined
•number:數(shù)值。最原始的數(shù)據(jù)類(lèi)型,表達(dá)式計(jì)算的載體
•string:字符串。最抽象的數(shù)據(jù)類(lèi)型,信息傳播的載體
•boolean:布爾值。最機(jī)械的數(shù)據(jù)類(lèi)型,邏輯運(yùn)算的載體
•object:對(duì)象。面向?qū)ο蟮幕A(chǔ)
#當(dāng)彈出一個(gè)變量時(shí): var aa;alert(aa); //變量定義,彈出undefined alert(aa); //變量未定義,undefined , 未定義的變量也是undefined #當(dāng)判斷一個(gè)變量是否存在時(shí): var str;if( str == undefined ) //變量定義,可以這樣判斷 if( str == undefined ) //變量未定義,報(bào)錯(cuò)ReferenceError: str is not defined 所以,當(dāng)判斷一個(gè)變量是否不存在時(shí),用 if( typeof str == undefined )
typeof:
alert(typeof 1); // 返回字符串"number"
alert(typeof "1"); // 返回字符串"string"
alert(typeof true); // 返回字符串"boolean"
alert(typeof {}); // 返回字符串"object"
alert(typeof []); // 返回字符串"object "
alert(typeof function(){}); // 返回字符串"function"
alert(typeof null); // 返回字符串"object"
alert(typeof undefined); // 返回字符串"undefined"
你會(huì)發(fā)現(xiàn):JavaScript解釋器認(rèn)為null是屬于object數(shù)據(jù)類(lèi)型的一種特殊形式,而function(){}是function類(lèi)型,也就是說(shuō)函數(shù)也是一種基本數(shù)據(jù)類(lèi)型,而不是對(duì)象的一種特殊形式。
實(shí)際上,在JavaScript中,函數(shù)是一個(gè)極容易引起誤解或引發(fā)歧義的數(shù)據(jù)類(lèi)型,它可以是獨(dú)立的函數(shù)類(lèi)型,又可以作為對(duì)象的方法,也可以被稱(chēng)為類(lèi)或構(gòu)造器,還可以作為函數(shù)對(duì)象而存在等。
所以,在《JavaScript權(quán)威指南》中把function被看做是object基本數(shù)據(jù)類(lèi)型的一種特殊對(duì)象,另外《悟透JavaScript》和《JavaScript高級(jí)程序設(shè)計(jì)》也把函數(shù)視為對(duì)象,而不是一種基本數(shù)據(jù)類(lèi)型。但是在《JavaScript語(yǔ)言精髓與編程實(shí)踐》中卻把function視為一種基本數(shù)據(jù)類(lèi)型,而把null視為object類(lèi)型的一種特殊形式。至于誰(shuí)對(duì)誰(shuí)錯(cuò),看來(lái)只有根據(jù)具體情況而定了。
以上這篇淺談js基本數(shù)據(jù)類(lèi)型和typeof就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- javascript基本數(shù)據(jù)類(lèi)型和轉(zhuǎn)換
- javascript基本數(shù)據(jù)類(lèi)型及類(lèi)型檢測(cè)常用方法小結(jié)
- JavaScript類(lèi)型系統(tǒng)之基本數(shù)據(jù)類(lèi)型與包裝類(lèi)型
- javascript中的五種基本數(shù)據(jù)類(lèi)型
- JavaScript基本數(shù)據(jù)類(lèi)型及值類(lèi)型和引用類(lèi)型
- Js從頭學(xué)起(基本數(shù)據(jù)類(lèi)型和引用類(lèi)型的參數(shù)傳遞詳細(xì)分析)
- JS開(kāi)發(fā)中基本數(shù)據(jù)類(lèi)型具體有哪幾種
相關(guān)文章
js 模式窗口(模式對(duì)話(huà)框和非模式對(duì)話(huà)框)的使用介紹
Javascript里面分模式對(duì)話(huà)框和非模式對(duì)話(huà)框,下面對(duì)兩者的使用做下介紹2014-07-07
JavaScript中document.referrer的用法詳解
這篇文章主要給大家介紹了關(guān)于JavaScript中document.referrer的用法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-07-07
javascript中的onkeyup和onkeydown區(qū)別介紹
文本框里輸入的時(shí)候要開(kāi)始計(jì)算文本框里面輸入了多少字,自然想到了onkeydown事件,然后計(jì)算value.length的方法,下面看下具體的代碼2013-04-04
JavaScript中CreateTextFile函數(shù)
JavaScript中CreateTextFile函數(shù)是創(chuàng)建指定的文件名并返回一個(gè) TextStream 對(duì)象,可以使用這個(gè)對(duì)象對(duì)文件進(jìn)行讀寫(xiě)2020-08-08
JavaScript中的運(yùn)算符種類(lèi)及其規(guī)則介紹
JavaScript中的運(yùn)算符有很多,主要分為算術(shù)運(yùn)算符,等同全同運(yùn)算符,比較運(yùn)算符,字符串運(yùn)算符,邏輯運(yùn)算符,賦值運(yùn)算符等,它們都有一個(gè)自己的運(yùn)算規(guī)則,在本文為大家介紹下2013-09-09
窗口沒(méi)有提示自動(dòng)關(guān)閉的js代碼
窗口沒(méi)有提示自動(dòng)關(guān)閉的js代碼...2007-03-03

