javascript學(xué)習(xí)筆記_淺談基礎(chǔ)語法,類型,變量
基礎(chǔ)語法、類型、變量
非數(shù)字值的判斷方法:(因為Infinity和NaN他們不等于任何值,包括自身)
1、用x != x ,當(dāng)x為NaN時才返回true;
2、用isNaN(x) ,當(dāng)x為NaN或非數(shù)字值時,返回true;
3、用isFinity(x),在x不是NaN、Infinity、-Infinity時返回true;
雖然(字符串、數(shù)字、布爾值)不是對象,他們的屬性是只讀的,但也可以像操作對象一樣來引用他們的屬性和方法,原理:
javascript構(gòu)造一個(String、Number、Boolean)的臨時對象(稱為包裝對象),然后通過這個臨時對象來調(diào)用它的屬性和方法,這些屬性、方法改變的只是這個臨時對象,隨后這個臨時對象會被銷毀,所做的改變不影響原數(shù)據(jù);
可以顯式的構(gòu)造一個包裝對象,它的值和原數(shù)據(jù)相等 ‘==',但類型不同 ‘==='
數(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'開頭的則把它當(dāng)著16進(jìn)制數(shù)來轉(zhuǎn)換)
parseInt(s,[n]) //n表示進(jìn)制,可選參數(shù),把s當(dāng)著n進(jìn)制數(shù)來轉(zhuǎn)為十進(jìn)制數(shù)
parseFloat(s,[n])
對象 自動轉(zhuǎn) 字符串步驟:
1.若有toString()方法,且它能返回原始值,則調(diào)用它,將返回的原始值轉(zhuǎn)字符串;
2.若第一步無效,則調(diào)用valueOf(),將返回的原始值轉(zhuǎn)字符串;
3.前兩不均無效,則拋出類型錯誤異常;
對象 自動轉(zhuǎn) 數(shù)字步驟:
1.若有valueOf(),則調(diào)用它,將返回的原始值轉(zhuǎn)數(shù)字,可返回這個數(shù)字;
2.若1無效,則嘗試調(diào)用toString(),將返回的原始值轉(zhuǎn)數(shù)字并返回該數(shù)字;
3.若1、2均無效,則拋出類型錯誤異常;
Date對象是個例外
變量聲明提前:
調(diào)用未聲明的變量,編譯時會把變量的聲明部分提前,而把初始化部分留在原地;
(重復(fù)聲明的變量,局部的將覆蓋外部的)
var s1 = 'ggggg';
function f() {
console.log(s1); //s1 == undefined
var s1 = 'cccccc';
console.log(s1); //s1 == 'cccccc'
}
位運算:& | ^ ~
&:按位與,對左右兩個整型操作數(shù)執(zhí)行AND操作,僅當(dāng)對應(yīng)位都為1時,結(jié)果為1;
|:按位或,對應(yīng)位有一個為1,則結(jié)果為1;
^:按位異或,對應(yīng)位一樣則為0,不一樣則為1;
~:按位取反,一元運算符,所有位取反,相當(dāng)于改變符號并減1;
(n是0~31之間)
<<n:所有位左移n位,即將值乘以2的n次方,舍棄最左n位,用0來補充右邊n位;
>>n:所有位右移n位,忽略右邊溢出位,填補左邊位有原操作數(shù)決定,結(jié)果相當(dāng)于除2的n次方,舍棄余數(shù),7>>1=3 , -7>>1=-4
<<<n:同<<,只是用0來填補左邊位
字符串之間的比較大?。?/strong>
JavaScript字符串是一個由16位整數(shù)值組成的字符系列,字符串的比較的是它們的字符的數(shù)值,大小寫的字符的數(shù)值不同;
比較運算符偏愛數(shù)字,只要有一個操作數(shù)為數(shù)字,就做數(shù)字運算,只有當(dāng)兩個都為字符串時,才做字符串比較
而‘+'運算符則偏愛字符串,只要有一個操作數(shù)為字符串,就做字符串連接運算
x in p
檢查對象p內(nèi)是否存在屬性x,包括方法
a instanceof A
檢查對象a是否是類A的一個實例,包含對其父類的檢測
假值:false、 null、 undefined、 0 、-0 、NaN ""
真值:除了以上的值,其他值均為真值;
對象:除了字符串、數(shù)字、true、false、null、undefined之外,其他值都是對象!
以上就是小編為大家?guī)淼膉avascript學(xué)習(xí)筆記_淺談基礎(chǔ)語法,類型,變量的全部內(nèi)容了,希望對大家有所幫助,多多支持腳本之家~
相關(guān)文章
JavaScript中Number.MAX_VALUE屬性的使用方法
這篇文章主要介紹了JavaScript中Number.MAX_VALUE屬性的使用方法,是JS入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下2015-06-06
javascript學(xué)習(xí)筆記(九)javascript中的原型(prototype)及原型鏈的繼承方式
在javascript學(xué)習(xí)筆記(八)中,我們主要學(xué)習(xí)了在使用javascript面向?qū)ο缶幊虝r,如何創(chuàng)建對象及添加對象的屬性和方法。2011-04-04
基于JavaScript實現(xiàn) 獲取鼠標(biāo)點擊位置坐標(biāo)的方法
本篇文章,小編將為大家介紹基于JavaScript實現(xiàn) 獲取鼠標(biāo)點擊位置坐標(biāo)的方法。有需要的朋友可以參考一下2013-04-04
javascript學(xué)習(xí)筆記(二) js一些基本概念
javascript學(xué)習(xí)筆記之js一些基本概念,學(xué)習(xí)js的朋友可以參考下2012-06-06

