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