js面向?qū)ο缶幊蹋篿f中可以使用那些作為判斷條件呢?課件_第1頁
js面向?qū)ο缶幊蹋篿f中可以使用那些作為判斷條件呢?課件_第2頁
js面向?qū)ο缶幊蹋篿f中可以使用那些作為判斷條件呢?課件_第3頁
js面向?qū)ο缶幊蹋篿f中可以使用那些作為判斷條件呢?課件_第4頁
js面向?qū)ο缶幊蹋篿f中可以使用那些作為判斷條件呢?課件_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、js面向?qū)ο缶幊蹋篿f中可以使用那些作為判斷條件呢?在所有編程語言中if是最長用的判斷之一,但在js中到底哪些東西可以在if中式作為判斷表達式呢?例如如何幾行,只是少了一個括號,真假就完全不同,到底表示什么含義呢 var obj=; obj.Funtext=function(); if(obj.Funtext) alert(true obj.Funtext;); else alert(false obj.Funtext); obj.Funtext=function(); if(obj.Funtext() alert(true obj.Funtext();); else alert(false

2、obj.Funtext(); 1第一類已定義的變量但未賦值在if中認為是假例如: var t; if(t) alert(true 已定義未賦值); else alert(false 已定義未賦值); 2第二類已定義的變量,賦值為空字符串在if中認為是假,賦值為其他的字符串,也就是是字符串中有字符就認為是真例如: var t; t=; if(t) alert(true t=;); else alert(false t=); if判斷是假再例如: var t; t= ; if(t) alert(true t= ;); else alert(false t= ); t=111; if(t) aler

3、t(true t=111;); else alert(false t=111); if判斷是真,也就是對于字符串類型,只要有字符,即使是空格字符if判斷也為真。3第三類已定義的變量,賦值為true在if中認為是真,賦值為false,則為假,這和其他語言中bool的類型的變量是一樣的。例如: var t; t=false; if(t) alert(true t=false;); else alert(false t=false;); t=true; if(t) alert(true t=true;); else alert(false t=true;); 4第四類已定義的變量,賦值為0在if中則

4、為假,其他數(shù)值認為是真,這和c語言中數(shù)值的類型的變量是一樣的。例如: var t; t=0; if(t) alert(true t=0;); else alert(false t=0;); t=0.0; if(t) alert(true t=0.0;); else alert(false t=0.0;); 測試發(fā)現(xiàn)不管是0,還是0.0都是假 var t; t=2; if(t) alert(true t=2;); else alert(false t=2;); 發(fā)現(xiàn)非0是都是真5第五類js中的特殊值null,undefined,都是假var t=null; if(t) alert(true t=

5、null;); else alert(false t=null;); t=undefined; if(t) alert(true t=undefined;); else alert(false t=undefined;); 由于在js中未定義的變量默認值是undefined,因此這也就就解釋了第一類情況6第六類已定義的函數(shù),根據(jù)調(diào)用方式又分為兩種第一種:不帶括號的,如果定義了就是真,沒有定義會報錯function testfunction() if(testfunction) alert(true testfunction;); else alert(false testfunction;);

6、 第二種:帶括號的,其實相當于調(diào)用函數(shù),自然是根據(jù)函數(shù)的返回值判斷真假例如: function testfunction() if(testfunction() alert(true testfunction;); else alert(false testfunction;); 是假,是因為,函數(shù)如果沒有定義返回值值,則返回值是undefined7第七類已定義的對象,未賦值時在if中則為假,賦值后是真。例如:var obj; if(obj) alert(true obj;); else alert(false obj;); 其實由于在js中變量在沒有賦值時是沒有類型的,因此和第一種情況是一樣

7、的。但在賦值后,就會變成真,例如: var obj; obj=; if(obj) alert(true obj=;); else alert(false obj=;); 8第八類已定義的對象的屬性字段,和單獨的變量是一樣的,例如數(shù)值型為0時是假,其他為真,字符串型是為空值時是假,其他為真。例如 var obj=; obj.Text=; if(obj.Text) alert(true obj.Text;); else alert(false obj.Text); obj.Text=Text; if(obj.Text) alert(true obj.Text;); else alert(false

8、 obj.Text); obj.Text=0; if(obj.Text) alert(true obj.Text;); else alert(false obj.Text); obj.Text=1; if(obj.Text) alert(true obj.Text;); else alert(false obj.Text); 9第九類已定義的對象的方法,和單獨的函數(shù)是一樣的,不加括號是如果沒定義就是假,var obj=; obj.Funtext=function(); if(obj.Funtext) alert(true obj.Funtext;); else alert(false obj.

9、Funtext); if(obj.Funtext1)/未定義屬性,也沒有定義方法 alert(true obj.Funtext1;); else alert(false obj.Funtext1); 加了括號相當于調(diào)用方法,就是根據(jù)返回值判斷真假。var obj=; obj.Funtext=function(); if(obj.Funtext() alert(true obj.Funtext();); else alert(false obj.Funtext(); obj.Funtext2=function() return ff; if(obj.Funtext2() alert(true obj.Funtext2();); else alert(false obj.Funtext2(); 可以看到在js中可以在if中作為判斷的類型

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論