JavaScript學(xué)習(xí)筆記整理_關(guān)于表達(dá)式和語(yǔ)句
表達(dá)式和語(yǔ)句
eval( ) 只有一個(gè)參數(shù)
參數(shù)非字符串時(shí),直接返回這個(gè)參數(shù);
參數(shù)為字符串時(shí),它把字符串當(dāng)成JavaScript代碼進(jìn)行編譯,編譯失敗則拋出語(yǔ)法錯(cuò)誤,編譯成功則執(zhí)行代碼,并返回最后一條語(yǔ)句的值,若沒(méi)有值則返回undefined
eval()使用了調(diào)用它的變量的作用域環(huán)境
它接收的字符串參數(shù),在作為單獨(dú)的代碼時(shí),必須是有語(yǔ)義的,否則編譯失敗
delete運(yùn)算符:用來(lái)刪除對(duì)象的自由屬性、數(shù)組的元素,
刪除屬性后,屬性將不存在,而刪除數(shù)組元素后,會(huì)在數(shù)組內(nèi)留下一個(gè)值為undefined的洞,數(shù)組長(zhǎng)度不變;
嘗試刪除無(wú)法刪除的屬性返回false,若刪除成功或刪除操作不起作用時(shí)均返回true
delete無(wú)法刪除:
1、內(nèi)置核心、客戶端屬性不能刪除;
2、用戶通過(guò)var語(yǔ)句聲明的變量不能刪除;
3、通過(guò)function語(yǔ)句定義的函數(shù)和函數(shù)參數(shù)也不能刪除
4、不可配置的屬性無(wú)法刪除
void運(yùn)算符:void的操作數(shù)會(huì)正常執(zhí)行,但會(huì)忽略操作數(shù)的值并返回undefined
void有如下作用:
* 通過(guò)采用void 0取undefined比采用字面上的undefined更靠譜更安全可靠;
* 填充<a>的href確保點(diǎn)擊時(shí)不會(huì)產(chǎn)生頁(yè)面跳轉(zhuǎn); 填充<image>的src,確保不會(huì)向服務(wù)器發(fā)出垃圾請(qǐng)求。href='javascript:void(0);'
不管break語(yǔ)句帶不帶標(biāo)簽,它的控制權(quán)都無(wú)法越過(guò)函數(shù)的邊界!即不能從函數(shù)內(nèi)部跳轉(zhuǎn)到函數(shù)外部
Object.create( p , [x] )
該方法創(chuàng)建一個(gè)以對(duì)象p為原型的新對(duì)象,并返回該對(duì)象,可選的x是用以對(duì)對(duì)象屬性的進(jìn)一步描述;
var p1 = Object.create(p); //新建對(duì)象p1,它繼承自對(duì)象p(以p為原型)
即p1的prototype(原型)屬性的值為p
P.x和P['x']的區(qū)別:
P.x訪問(wèn)時(shí),只能固定訪問(wèn)屬性名為x的屬性;
而P['x']比較靈活,可以動(dòng)態(tài)的修改[ ]內(nèi)字符串的值,來(lái)訪問(wèn)不同的屬性,如P['x'+i]
邏輯與“&&”,邏輯或”||“的妙用:短路行為
通過(guò)&&,保證了讀取length屬性之前,book和book.subtitle都為真值,即為對(duì)象
var len = book && book.subtitle && book.subtitle.length;
保證x的值為:從a~f中,第一個(gè)為真值的值,忽略后面的真值
var x = a || b || c || d || e || f;
if( ! buy){...} 當(dāng)buy為假值時(shí),執(zhí)行{...}
通過(guò)! ! x來(lái)得到一個(gè)等價(jià)的布爾值
以上就是小編為大家?guī)?lái)的JavaScript學(xué)習(xí)筆記整理_關(guān)于表達(dá)式和語(yǔ)句的全部?jī)?nèi)容了,希望對(duì)大家有所幫助,多多支持腳本之家~
相關(guān)文章
讓ie運(yùn)行js時(shí)提示允許阻止內(nèi)容運(yùn)行的解決方法
這個(gè)問(wèn)題一般是因?yàn)榫W(wǎng)頁(yè)中使用了一些js代碼,而ie的默認(rèn)安全級(jí)別過(guò)高導(dǎo)致運(yùn)行js時(shí)需要經(jīng)過(guò)準(zhǔn)許才可以。下面是IE的設(shè)置方法。2010-10-10JS 事件綁定、事件監(jiān)聽(tīng)、事件委托詳細(xì)介紹
這篇文章主要介紹了JS 事件綁定、事件監(jiān)聽(tīng)、事件委托詳細(xì)介紹的相關(guān)資料,需要的朋友可以參考下2016-09-09Angularjs 設(shè)置全局變量的方法總結(jié)
這篇文章主要介紹了Angularjs 設(shè)置全局變量的方法總結(jié)的相關(guān)資料,需要的朋友可以參考下2016-10-10淺談javascript構(gòu)造函數(shù)與實(shí)例化對(duì)象
JavaScript 中的構(gòu)造函數(shù)和其它語(yǔ)言中的構(gòu)造函數(shù)是不同的。 通過(guò) new 關(guān)鍵字方式調(diào)用的函數(shù)都被認(rèn)為是構(gòu)造函數(shù)。任何JavaScript 函數(shù)都可以用做構(gòu)造函數(shù),構(gòu)造函數(shù)必須 使用new 運(yùn)算符作為前綴來(lái)創(chuàng)建新的實(shí)例。2015-06-06簡(jiǎn)介JavaScript中toUpperCase()方法的使用
這篇文章主要介紹了JavaScript中的toUpperCase()方法的使用,是JS入門(mén)學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-06-06怎樣在JavaScript里寫(xiě)一個(gè)swing把數(shù)據(jù)插入數(shù)據(jù)庫(kù)
在JavaScript里寫(xiě)一個(gè)swing來(lái)實(shí)現(xiàn)確定取消,來(lái)決定是否執(zhí)行這個(gè)功能 控制把數(shù)據(jù)插入數(shù)據(jù)庫(kù),接下來(lái)介紹實(shí)現(xiàn)方法2012-12-12javaScript array(數(shù)組)使用字符串作為數(shù)組下標(biāo)的方法
這篇文章主要介紹了javaScript array(數(shù)組)使用字符串作為數(shù)組下標(biāo)的方法,大家可以測(cè)試一下看看2013-11-11深入理解JavaScript系列(45):代碼復(fù)用模式(避免篇)詳解
這篇文章主要介紹了深入理解JavaScript系列(45):代碼復(fù)用模式(避免篇)詳解,本文講解了默認(rèn)模式、借用構(gòu)造函數(shù)、借用構(gòu)造函數(shù)并設(shè)置原型、共享原型、臨時(shí)構(gòu)造函數(shù)、klass等內(nèi)容,需要的朋友可以參考下2015-03-03JavaScript Math.ceil() 函數(shù)使用介紹
Math.ceil(x) -- 返回大于等于數(shù)字參數(shù)的最小整數(shù)(取整函數(shù)),對(duì)數(shù)字進(jìn)行上舍入,下面有個(gè)不錯(cuò)的示例,感興趣的朋友可以參考下2013-12-12