js null,undefined,字符串小結(jié)
更新時(shí)間:2010年08月21日 15:35:01 作者:
還一個(gè)要注意的就是null雖然是Object型 但是它非常特殊,本身存放在stack棧中。你可以理解成它是Object的一種特殊形式
復(fù)制代碼 代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>null,undefined,字符串的內(nèi)存占有情況隨談</title>
<style type="text/css">
body{font-size:12px;}
pre{padding:5px;border:solid 2px #dfdfdf;color:#fff; background-color:#666;}
</style>
</head>
<body>
<pre>
<strong>總結(jié):</strong>
//還一個(gè)要注意的就是null雖然是Object型 但是它非常特殊,本身存放在stack棧中。你可以理解成它是Object的一種特殊形式。
//還有就是在其他面向?qū)ο蟮恼Z(yǔ)言中一般情況下字符串都是存放在heap堆中,但在js中這個(gè)存放在棧stack中
//到這以后 突然想到一個(gè)問(wèn)題 聲明和定義的區(qū)別,想了想 感覺本身是一個(gè)東西,兩種說(shuō)法而已。此時(shí),我突然想當(dāng)聲明一個(gè)變量時(shí),
//它是否在棧中呢 既是是否占用內(nèi)存,(當(dāng)然所有的代碼會(huì)存在代碼段,但用內(nèi)存,可我說(shuō)的不是這),我是指未定義的變量是否在棧中存在
//想了一會(huì) 我認(rèn)為存在,原因就是undefined類型只有一個(gè)值undefined,當(dāng)聲明的變量未初始化時(shí),當(dāng)然默認(rèn)值是undefined的字面量。
//講一講null,其實(shí)它本來(lái)應(yīng)該存在堆中 但是js堆ECMAscript實(shí)現(xiàn)錯(cuò)了,然后現(xiàn)在也被標(biāo)準(zhǔn)接受 成為一個(gè)Object的占位符
</pre>
<script language="javascript" type="text/javascript">
alert(NaN == NaN);//false
alert(undefined === undefined);//true
alert(undefined == null);//true,原因是undefined時(shí)從null派生過(guò)來(lái)的。
alert(typeof null);
alert(undefined === null); //false
//通過(guò)上面的例子,可以寫個(gè)判斷是否為undefined的函數(shù)如下
var isUndefined = function (param) {
return param === undefined;
};
//還一個(gè)要注意的就是null雖然是Object型 但是它非常特殊,本身存放在stack棧中。你可以理解成它是Object的一種特殊形式。
//還有就是在其他面向?qū)ο蟮恼Z(yǔ)言中一般情況下字符串都是存放在heap堆中,但在js中這個(gè)存放在棧stack中
</script>
</body>
</html>
相關(guān)文章
實(shí)例講解JavaScript中instanceof運(yùn)算符的用法
JavaScript中的instanceof運(yùn)算符可以用來(lái)判斷對(duì)象類型,而更重要的是instanceof能夠判斷對(duì)象的繼承關(guān)系,這里我們就來(lái)以實(shí)例講解JavaScript中instanceof運(yùn)算符的用法2016-06-06
javascript indexOf函數(shù)使用說(shuō)明
JavaScript中indexOf函數(shù)方法是返回 String 對(duì)象內(nèi)第一次出現(xiàn)子字符串的字符位置。2008-07-07
JavaScript程序中實(shí)現(xiàn)繼承特性的方式總結(jié)
JavaScript是一門強(qiáng)行聲稱面向?qū)ο蟮恼Z(yǔ)言,而繼承是面向?qū)ο蟮囊淮笾饕匦?這里我們根據(jù)阮一峰老師的文章來(lái)看一下JavaScript程序中實(shí)現(xiàn)繼承特性的方式總結(jié)2016-06-06
簡(jiǎn)單掌握J(rèn)avaScript中const聲明常量與變量的用法
const和let一樣,也是ES6版本中引入的新關(guān)鍵字,下面我們就通過(guò)例子來(lái)簡(jiǎn)單掌握J(rèn)avaScript中const關(guān)鍵詞聲明常量與變量的用法2016-05-05
JavaScript入門教程(4) js瀏覽器對(duì)象
navigator 瀏覽器對(duì)象,包含了正在使用的 Navigator 的版本信息。反映了當(dāng)前使用的瀏覽器的資料。JavaScript 客戶端運(yùn)行時(shí)刻引擎自動(dòng)創(chuàng)建 navigator 對(duì)象。2009-01-01
Dojo Javascript 編程規(guī)范 規(guī)范自己的JavaScript書寫
良好的JavaScript書寫習(xí)慣的優(yōu)點(diǎn)不言而喻,今天彬Go向大家推薦Dojo Javascript 編程規(guī)范,相當(dāng)不錯(cuò)的 Javascript 編程風(fēng)格規(guī)范,建議大家可以借鑒一下此規(guī)范編寫 Javascript。感謝i.feelinglucky的翻譯2014-10-10

