javascript學(xué)習(xí)筆記_淺談基礎(chǔ)語(yǔ)法,類(lèi)型,變量
基礎(chǔ)語(yǔ)法、類(lèi)型、變量
非數(shù)字值的判斷方法:(因?yàn)镮nfinity和NaN他們不等于任何值,包括自身)
1、用x != x ,當(dāng)x為NaN時(shí)才返回true;
2、用isNaN(x) ,當(dāng)x為NaN或非數(shù)字值時(shí),返回true;
3、用isFinity(x),在x不是NaN、Infinity、-Infinity時(shí)返回true;
雖然(字符串、數(shù)字、布爾值)不是對(duì)象,他們的屬性是只讀的,但也可以像操作對(duì)象一樣來(lái)引用他們的屬性和方法,原理:
javascript構(gòu)造一個(gè)(String、Number、Boolean)的臨時(shí)對(duì)象(稱(chēng)為包裝對(duì)象),然后通過(guò)這個(gè)臨時(shí)對(duì)象來(lái)調(diào)用它的屬性和方法,這些屬性、方法改變的只是這個(gè)臨時(shí)對(duì)象,隨后這個(gè)臨時(shí)對(duì)象會(huì)被銷(xiāo)毀,所做的改變不影響原數(shù)據(jù);
可以顯式的構(gòu)造一個(gè)包裝對(duì)象,它的值和原數(shù)據(jù)相等 ‘==',但類(lèi)型不同 ‘==='
數(shù)字a 轉(zhuǎn) 字符串:
a.toString(n) //n表示進(jìn)制
a.toFixed(i) a.toExponential(i) a.toPrecision(j) //i為小數(shù)位數(shù),j為要顯示位數(shù)
字符串s 轉(zhuǎn) 十進(jìn)制數(shù)字:(忽略前置的空格,盡可能多的轉(zhuǎn)換數(shù)字,忽略后面的非數(shù)字內(nèi)容,其中'0X'、'0x'開(kāi)頭的則把它當(dāng)著16進(jìn)制數(shù)來(lái)轉(zhuǎn)換)
parseInt(s,[n]) //n表示進(jìn)制,可選參數(shù),把s當(dāng)著n進(jìn)制數(shù)來(lái)轉(zhuǎn)為十進(jìn)制數(shù)
parseFloat(s,[n])
對(duì)象 自動(dòng)轉(zhuǎn) 字符串步驟:
1.若有toString()方法,且它能返回原始值,則調(diào)用它,將返回的原始值轉(zhuǎn)字符串;
2.若第一步無(wú)效,則調(diào)用valueOf(),將返回的原始值轉(zhuǎn)字符串;
3.前兩不均無(wú)效,則拋出類(lèi)型錯(cuò)誤異常;
對(duì)象 自動(dòng)轉(zhuǎn) 數(shù)字步驟:
1.若有valueOf(),則調(diào)用它,將返回的原始值轉(zhuǎn)數(shù)字,可返回這個(gè)數(shù)字;
2.若1無(wú)效,則嘗試調(diào)用toString(),將返回的原始值轉(zhuǎn)數(shù)字并返回該數(shù)字;
3.若1、2均無(wú)效,則拋出類(lèi)型錯(cuò)誤異常;
Date對(duì)象是個(gè)例外
變量聲明提前:
調(diào)用未聲明的變量,編譯時(shí)會(huì)把變量的聲明部分提前,而把初始化部分留在原地;
(重復(fù)聲明的變量,局部的將覆蓋外部的)
var s1 = 'ggggg';
function f() {
console.log(s1); //s1 == undefined
var s1 = 'cccccc';
console.log(s1); //s1 == 'cccccc'
}
位運(yùn)算:& | ^ ~
&:按位與,對(duì)左右兩個(gè)整型操作數(shù)執(zhí)行AND操作,僅當(dāng)對(duì)應(yīng)位都為1時(shí),結(jié)果為1;
|:按位或,對(duì)應(yīng)位有一個(gè)為1,則結(jié)果為1;
^:按位異或,對(duì)應(yīng)位一樣則為0,不一樣則為1;
~:按位取反,一元運(yùn)算符,所有位取反,相當(dāng)于改變符號(hào)并減1;
(n是0~31之間)
<<n:所有位左移n位,即將值乘以2的n次方,舍棄最左n位,用0來(lái)補(bǔ)充右邊n位;
>>n:所有位右移n位,忽略右邊溢出位,填補(bǔ)左邊位有原操作數(shù)決定,結(jié)果相當(dāng)于除2的n次方,舍棄余數(shù),7>>1=3 , -7>>1=-4
<<<n:同<<,只是用0來(lái)填補(bǔ)左邊位
字符串之間的比較大?。?/strong>
JavaScript字符串是一個(gè)由16位整數(shù)值組成的字符系列,字符串的比較的是它們的字符的數(shù)值,大小寫(xiě)的字符的數(shù)值不同;
比較運(yùn)算符偏愛(ài)數(shù)字,只要有一個(gè)操作數(shù)為數(shù)字,就做數(shù)字運(yùn)算,只有當(dāng)兩個(gè)都為字符串時(shí),才做字符串比較
而‘+'運(yùn)算符則偏愛(ài)字符串,只要有一個(gè)操作數(shù)為字符串,就做字符串連接運(yùn)算
x in p
檢查對(duì)象p內(nèi)是否存在屬性x,包括方法
a instanceof A
檢查對(duì)象a是否是類(lèi)A的一個(gè)實(shí)例,包含對(duì)其父類(lèi)的檢測(cè)
假值:false、 null、 undefined、 0 、-0 、NaN ""
真值:除了以上的值,其他值均為真值;
對(duì)象:除了字符串、數(shù)字、true、false、null、undefined之外,其他值都是對(duì)象!
以上就是小編為大家?guī)?lái)的javascript學(xué)習(xí)筆記_淺談基礎(chǔ)語(yǔ)法,類(lèi)型,變量的全部?jī)?nèi)容了,希望對(duì)大家有所幫助,多多支持腳本之家~
相關(guān)文章
JavaScript中也使用$美元符號(hào)來(lái)代替document.getElementById
JavaScript可以定義$符號(hào)函數(shù),簡(jiǎn)寫(xiě)或書(shū)寫(xiě)兼容性更好的代碼。2010-06-06
JavaScript學(xué)習(xí)筆記之基礎(chǔ)語(yǔ)法
本文不是零基礎(chǔ)教學(xué),請(qǐng)沒(méi)javascript基礎(chǔ)的小伙伴們先出門(mén)左拐,本人之前學(xué)習(xí)java的,所以本文主要對(duì)比下java學(xué)習(xí)javascript。2015-01-01
javascript創(chuàng)建數(shù)組之聯(lián)合數(shù)組的使用方法示例
聯(lián)合數(shù)組也叫做鍵值數(shù)組,和php中的鍵值數(shù)組類(lèi)似,下面看代碼如何演示2013-12-12
JavaScript onkeydown事件入門(mén)實(shí)例(鍵盤(pán)某個(gè)按鍵被按下)
這篇文章主要介紹了JavaScript onkeydown事件入門(mén)實(shí)例,onkeydown事件捕捉鍵盤(pán)上某個(gè)按鍵被按下的情況,需要的朋友可以參考下2014-10-10
HTML復(fù)選框和單選框 checkbox和radio事件介紹
checkbox 和 radio的事件選擇一度讓我很迷惑,開(kāi)始以我對(duì)js的理解,我覺(jué)得change事件應(yīng)該是最合理的,可惜啊ie下change事件是在改變后焦點(diǎn)離開(kāi)時(shí)才觸發(fā)2012-12-12
詳細(xì)講解JS節(jié)點(diǎn)知識(shí)
最近發(fā)現(xiàn)DOMDocument對(duì)象很重要,還有XMLHTTP也很重要2010-01-01

