Javascript&DHTML基礎(chǔ)知識(shí)第1/2頁(yè)
更新時(shí)間:2008年07月03日 20:53:12 作者:
首先請(qǐng)下載JScript.chm這本手冊(cè),無(wú)論新手老手,有一本手冊(cè)是免不了的,特別是對(duì)于新手,如果你沒(méi)有空翻犀牛書(shū),那么這本手冊(cè)將是你了解這門語(yǔ)言的首選。下面所講的大多數(shù),手冊(cè)上可以沒(méi)有提及,或提及很少的內(nèi)容。
以下的教程都是針對(duì)你對(duì)上面所說(shuō)的JScript.chm這本手冊(cè)了解的基礎(chǔ)上而寫(xiě)的,如果你還沒(méi)有看過(guò)JScript.chm,建議你先下載,邊看手冊(cè),邊看教程。
JS的語(yǔ)法與大多數(shù)類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é)果。
JS的語(yǔ)法與大多數(shù)類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é)果。
相關(guān)文章
Js 獲取HTML DOM節(jié)點(diǎn)元素的方法小結(jié)
在Web應(yīng)用程序特別是Web2.0程序開(kāi)發(fā)中,經(jīng)常要獲取頁(yè)面中某個(gè)元素,然后更新該元素的樣式、內(nèi)容等。2009-04-04
基于javascript實(shí)現(xiàn)彩票隨機(jī)數(shù)生成(簡(jiǎn)單版)
這篇文章主要介紹了基于javascript實(shí)現(xiàn)彩票隨機(jī)數(shù)生成的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-01-01
JS利用循環(huán)解決的一些常見(jiàn)問(wèn)題總結(jié)
循環(huán)輸出問(wèn)題是面試中經(jīng)典的題目,一般會(huì)給出代碼,讓我們解釋原因,并給出若干解決方案,下面這篇文章主要給大家介紹了關(guān)于JS利用循環(huán)解決的一些常見(jiàn)問(wèn)題,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-08-08
淺談js中調(diào)用函數(shù)時(shí)加不加括號(hào)的問(wèn)題
下面小編就為大家?guī)?lái)一篇淺談js中調(diào)用函數(shù)時(shí)加不加括號(hào)的問(wèn)題 。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-07-07

