Javascript&DHTML基礎(chǔ)知識(shí)第2/2頁(yè)
更新時(shí)間:2008年07月03日 20:53:12 作者:
首先請(qǐng)下載JScript.chm這本手冊(cè),無(wú)論新手老手,有一本手冊(cè)是免不了的,特別是對(duì)于新手,如果你沒(méi)有空翻犀牛書,那么這本手冊(cè)將是你了解這門語(yǔ)言的首選。下面所講的大多數(shù),手冊(cè)上可以沒(méi)有提及,或提及很少的內(nèi)容。
2、在字符串中,也需要注意
<script>
function assert (aVar) {
if (aVar) alert(true);
else alert(false);
}
var a="undefined";
var b="false";
var c="";
assert(a) // true
assert(b) // true
assert(c) // false
</script>
注意:上例中的條件判斷是直接判斷條件語(yǔ)句的,如果我們把條件語(yǔ)句改成:
<script>
function assert (aVar) {
if (aVar==true) alert(true);
else alert(false);
}
var a="undefined";
var b="false";
var c="";
assert(a) // false
assert(b) // false
assert(c) // false
</script>
也會(huì)有截然不同的結(jié)果。因此,在處理這方面問(wèn)題的時(shí)候要小心。
也許有些朋友看到這里就會(huì)有點(diǎn)暈了,那么怎么樣才能像手冊(cè)中所說(shuō),只有"",0,null,undefined這些才能是false呢?方法至少有兩種:
(一)、強(qiáng)制轉(zhuǎn)型:
1、用上面所說(shuō)過(guò)的Boolean(aVar)來(lái)轉(zhuǎn)型。
2、用“非運(yùn)算符”來(lái)轉(zhuǎn)型。比如上例
<script>
function assert (aVar) {
if (!!aVar==true) alert(true);
else alert(false);
}
var a="undefined";
var b="false";
var c="";
assert(a) // true
assert(b) // true
assert(c) // false
</script>
兩個(gè)取反,將aVar轉(zhuǎn)成Boolean型,相當(dāng)于Boolean(aVar)。
(二)、全等運(yùn)算符。
全等運(yùn)算符是三個(gè)等于"===",這與上面所說(shuō)的不同,它只進(jìn)行同類型的比較。就上例所說(shuō),它只比較的是true或者false,如果與字符串或數(shù)字等比,都是false,只有與true相比,才是true。舉例:
<script>
function assert (aVar) {
if (aVar===true) alert(true);
else alert(false);
}
var a="undefined";
var b=true;
var c=1;
assert(a) // false
assert(b) // true
assert(c) // false
</script>
四、對(duì)象(Object)。
JS創(chuàng)建對(duì)象有至少以下兩種方法:
1、如上所說(shuō),用new關(guān)鍵字。比如new Number(100),new String("string"),new Object(),new customFunction()等。
這種方法在手冊(cè)上有很詳細(xì)的說(shuō)明,這里就不再多說(shuō)。
2、還可以用花括號(hào)括起來(lái)。比如
var o = {
m1:'never-online.net',
m2:'blog'
}
這種方法就比較省時(shí)省力了。利用這種方法來(lái)創(chuàng)建對(duì)象,需要注意的就是,
每個(gè)成員后有一個(gè)":"冒號(hào),冒號(hào)后是該成員的內(nèi)容。
其次就是,成員內(nèi)容后有一個(gè)逗號(hào)",",但僅最后一個(gè)成員是沒(méi)有逗號(hào)的。
五、函數(shù)(Function)。
函數(shù)在JS里的作用有兩個(gè),
一是做為一個(gè)普通函數(shù)一樣被調(diào)用。
二是可以做為一個(gè)"類"(class)來(lái)使用。
第一條就沒(méi)有什么可說(shuō)明的了,手冊(cè)上說(shuō)得很清楚了,第二條就簡(jiǎn)要說(shuō)明一下。
上面第四點(diǎn)里說(shuō)到對(duì)象,除了創(chuàng)建JS本身的對(duì)象之外,需要?jiǎng)?chuàng)建一個(gè)類的實(shí)例,那么就必須先把“類”寫出來(lái)。這個(gè)類就是Function。
比如:
<script>
function myclass() {
this.m1="member--m1";
this.m2="member--m2";
}
var o = new myclass();
</script>
六、關(guān)于this和new關(guān)鍵字。
也許有些朋友還不太清楚這個(gè)this的作用是什么。這是面向?qū)ο罄锼峒暗膬?nèi)容
這里也簡(jiǎn)單說(shuō)一下,this就是“自己”的意思,而上面的的“自己”,就是指myclass。
舉個(gè)例子來(lái)說(shuō)myclass這個(gè)類就是一個(gè)模具,模具上有一個(gè)名字(m1),還有一個(gè)螺絲(m2),而new關(guān)鍵字就可以理解成“生產(chǎn)”。那么就可以把上面的代碼理解成:
(模具 myclass)function myclass() {
(模具myclass的名字是)this.m1="member--m1"
(模具myclass上面的螺絲是)this.m2="member--m2";
}
按照模具myclass的樣式生產(chǎn)一個(gè)產(chǎn)品o
var o= new myclass();
這個(gè)剛出爐的產(chǎn)品就有模具myclass的所有特性了。當(dāng)然,我們可以按照這個(gè)模具的樣式生產(chǎn)成千上萬(wàn)個(gè)。
如果我們?cè)敢?,我們還可以修改一下他的屬性,比如,我生產(chǎn)完一個(gè)產(chǎn)品,想把他的名字換了。我們也可以這么做
var product = new myclass();
product.m1 = "newProduct"
上面這樣講解,希望能清楚一些。
基本把要說(shuō)的基礎(chǔ)知識(shí)簡(jiǎn)單的說(shuō)了一些,JS的基礎(chǔ)知識(shí)其實(shí)也有很多,知道有疏忽,但是又不便多寫,寫多了就煩瑣了,只有走一步看一步了,看看還有什么不清楚的,才能再寫出來(lái)了
相關(guān)文章
js實(shí)現(xiàn)刪除li標(biāo)簽一行內(nèi)容
這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)刪除li標(biāo)簽一行內(nèi)容,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-04-04JS頁(yè)面刷新與重新加載功能實(shí)現(xiàn)(關(guān)閉當(dāng)前窗口)
在計(jì)算機(jī)網(wǎng)頁(yè)中如果我們想獲取當(dāng)前頁(yè)面最新的內(nèi)容,可以刷新當(dāng)前頁(yè)面重新獲取數(shù)據(jù),這篇文章主要給大家介紹了關(guān)于JS頁(yè)面刷新與重新加載功能實(shí)現(xiàn)(關(guān)閉當(dāng)前窗口)的相關(guān)資料,需要的朋友可以參考下2023-10-10JavaScript實(shí)現(xiàn)Tab標(biāo)簽頁(yè)切換的最簡(jiǎn)便方式(4種)
這篇文章主要介紹了JavaScript實(shí)現(xiàn)Tab標(biāo)簽頁(yè)切換的最簡(jiǎn)便方式(4種),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06JavaScript常用的彈出廣告及背投廣告實(shí)現(xiàn)方法
這篇文章主要介紹了JavaScript常用的彈出廣告及背投廣告實(shí)現(xiàn)方法,實(shí)例分析了彈出廣告與背投廣告的實(shí)現(xiàn)原理與相關(guān)技巧,需要的朋友可以參考下2015-02-02onsubmit阻止form表單提交與onclick的相關(guān)操作
return false會(huì)阻止表單提交,基本上關(guān)于onsubmit=return false有以下幾點(diǎn)要注意的地方,學(xué)習(xí)后臺(tái)編程的朋友一定要知道。2010-09-09uniapp項(xiàng)目?jī)?yōu)化方式及建議
性能優(yōu)化自古以來(lái)就是重中之重,本文關(guān)于uniapp項(xiàng)目?jī)?yōu)化方式最全整理,會(huì)根據(jù)開(kāi)發(fā)情況進(jìn)行補(bǔ)充,感興趣的可以了解一下2021-08-08JavaScript實(shí)現(xiàn)的原生態(tài)兼容IE6可調(diào)可控滾動(dòng)文字功能詳解
這篇文章主要介紹了JavaScript實(shí)現(xiàn)的原生態(tài)兼容IE6可調(diào)可控滾動(dòng)文字功能,簡(jiǎn)單說(shuō)明了文字滾動(dòng)的實(shí)現(xiàn)原理并結(jié)合具體實(shí)例形式給出了javascript文字滾動(dòng)功能的具體實(shí)現(xiàn)代碼,需要的朋友可以參考下2017-09-09