|
JS的語(yǔ)法與大多數(shù)類(lèi)C的語(yǔ)言差不多的語(yǔ)法,差別只在它本身的特性上面。所以語(yǔ)法的具體內(nèi)容,我不再多寫(xiě),多看看手冊(cè)應(yīng)該明白的。
JS五大對(duì)象:String, Number, Boolean, Object, Function。
JS四種循環(huán):
for(var i=0; i<n; i++) {}
do {} while(true);
while(true) {}
for (var i in collection) {}
異常處理:
try {} catch(aVariable){}
JS語(yǔ)法我就不一一列舉了,這里只JS的幾大對(duì)象進(jìn)行一些說(shuō)明,手冊(cè)也許是沒(méi)有說(shuō)到的。
一、字符串。
字符串是最常用的。而強(qiáng)制轉(zhuǎn)換成字符串的方式至少有幾下兩種:
1、用字符串連接符"+"號(hào)。+號(hào)在JS里如果是運(yùn)算就是加,如果是字符串,就是拼接,比如:
<script>
var a_number = 1000
var a_string = a_number + "";
</script>
2、用String強(qiáng)制轉(zhuǎn)型(String)。
<script>
var a_number = 1000
var a_string = String(a_number);
</script>
在這里要注意一點(diǎn),上面說(shuō)的是強(qiáng)制轉(zhuǎn)型,String前是沒(méi)有"new"關(guān)鍵字的。如果加上new 關(guān)鍵字,那么得到的將是一個(gè)String對(duì)象。對(duì)象可以包含屬性和方法,而字符串不能,以下可以做一個(gè)比較:
<script>
var a_number = 1000
var a_string = String(a_number);
a_string.property = "js";
alert(a_string.property) //將提示undefined
var a_object = new String(a_number)
a_object.property = "js";
alert(a_object.property) //將提示js
</script>
所以,有new和沒(méi)有new是有區(qū)別的。這一點(diǎn)在Number,Boolean里都是如此,所以關(guān)于這樣的轉(zhuǎn)型,在以后中將不再多說(shuō)。
二、數(shù)字(Number)。
這里也說(shuō)一說(shuō)轉(zhuǎn)型的問(wèn)題。
除了可以用Number來(lái)強(qiáng)制轉(zhuǎn)型外,也可以用parseInt, parseFloat來(lái)轉(zhuǎn)成整型或者浮點(diǎn)型。如果轉(zhuǎn)型后不是數(shù)字,那么,將返回NaN(Not a Number),這個(gè)時(shí)候可以用isNaN函數(shù)來(lái)判斷,這里你可以查一下手冊(cè),看看里面的語(yǔ)法。順便記一下這個(gè)函數(shù)。
三、布爾型(Boolean)。
這一個(gè)就較麻煩一些了,因?yàn)镴S里對(duì)它的處理比較奇特。
除了JScript手冊(cè)上所說(shuō)的:“
一個(gè)值為 true 或者 false 的表達(dá)式。如果需要,非 Boolean 表達(dá)式也可以被轉(zhuǎn)換為 Boolean 值,但是要遵循下列規(guī)則:
所有的對(duì)象都被當(dāng)作 true。
當(dāng)且僅當(dāng)字符串為空時(shí),該字符串被當(dāng)作 false。
null 和 undefined 被當(dāng)作 false。
當(dāng)且僅當(dāng)數(shù)字為零時(shí),該數(shù)字被當(dāng)作 false。
”以外,還應(yīng)該注意:
首先,在沒(méi)有強(qiáng)制轉(zhuǎn)換成布爾型之前,也就是非true或者也非false的時(shí)候
1、在數(shù)字條件判斷中,一般情況下就是三種情況:0,負(fù)數(shù),正數(shù),只要是非0就是true,下面是示例。
<script>
var a = 0;
var b = -1;
var c = 1;
function assert (aVar) {
if (aVar) alert(true);
else alert(false);
}
assert(a) // false
assert(b) // true
assert(c) // true
</script>
注意:上例中的條件判斷是直接判斷條件語(yǔ)句的,如果我們把條件語(yǔ)句改成:
<script>
var a = 0;
var b = -1;
var c = 1;
function assert (aVar) {
if (aVar==true) alert(true);
else alert(false);
}
assert(a) // false
assert(b) // false
assert(c) // true
</script>
負(fù)數(shù)會(huì)有截然不同的結(jié)果。
JavaScript技術(shù):Javascript&amp;DHTML基礎(chǔ)知識(shí)第1/2頁(yè),轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。