成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

總結(jié)的一些JavaScript的冷知識(shí)

lingdududu / 2496人閱讀

摘要:例如要?jiǎng)h除數(shù)組的第個(gè)元素,可以使用這樣的語(yǔ)句不過對(duì)于大型數(shù)組來(lái)說(shuō),這個(gè)函數(shù)的效率可能不高。可選參數(shù)可以限制被分割的片段數(shù)量。看代碼吧下面的代碼利用的來(lái)實(shí)現(xiàn)垂直居中和水平居中轉(zhuǎn)自快樂人生,積極進(jìn)取總結(jié)的一些的冷知識(shí)

1、!!將一個(gè)值方便快速轉(zhuǎn)化為布爾值
console.log( !!window===true );
2、不聲明第三個(gè)變量實(shí)現(xiàn)交換
var a=1,b=2;
a=[b,b=a][0];//執(zhí)行完這句代碼之后 a的值為2 b的值為1了
3、&&和||的用法 (學(xué)會(huì)了立馬感覺高大尚了吧)

用代碼說(shuō)話吧

var day=(new Date).getDay()===0;
//傳統(tǒng)if語(yǔ)句
if (day) {
    alert("Today is Sunday!");
};
//運(yùn)用邏輯與代替if
day&&alert("Today is Sunday!");//也就是說(shuō)只有day為真的情況才執(zhí)行后面的代碼alert  一句簡(jiǎn)單的代碼就實(shí)現(xiàn)了上面的if功能  強(qiáng)大吧
 if (!a) {
    a = {};
 }
 //上面的三句話可以用下面的一句話替換哦
 a = a || {}; //解釋這句話一下哦   如果有a這個(gè)變量的聲明的話 那么它還是原來(lái)的對(duì)象  如果沒有就給它創(chuàng)建一個(gè)對(duì)象
順便寫一下下面的例子

與其這樣書寫:if(string.length > 0){..}
不如這樣書寫:if(string.length){..}

4、NAN不等于任何值,包括它自身

大家都知道在任何編程語(yǔ)言中,如果被除數(shù)為0則會(huì)報(bào)錯(cuò),而在js里面不會(huì),它返回的值為NAN,NaN表示一個(gè)不能產(chǎn)生正常結(jié)果的運(yùn)算結(jié)果,我們可以用isNaN(number)來(lái)檢測(cè)是不是NAN,但是大家也許都不知道NAN不等于任何值,包括它自身。

5、利用script標(biāo)簽保存任意信息

將script標(biāo)簽設(shè)置為type="text"然后可以在里面保存任意信息,之后可以在JavaScript代碼中很方便地獲取。

頁(yè)面代碼如下所示:

 
    

結(jié)果顯示如下圖所示:

6、js當(dāng)中Switch的一些用法

看上圖運(yùn)行的效果,總結(jié)一句哦!

1)switch參數(shù)變量與case后面的比較是全等比較,也就是說(shuō)===的比較 ?

2)并非每一個(gè)case后面都需要書寫break,如果不寫的話,它會(huì)順序往下執(zhí)行的

3)switch語(yǔ)句不光可以使用數(shù)字、字符做條件表達(dá)式,還可以使用字符串!

看下面的switch的使用,你瞬間覺得switch這么厲害!

7、了解作用域,清楚明白當(dāng)前的this是誰(shuí)

8、?你可能不知道的js數(shù)組

數(shù)組的length屬性不可枚舉

JS的數(shù)組可以用字符串形式的數(shù)字下標(biāo)來(lái)訪問,因?yàn)閿?shù)組的元素其實(shí)是數(shù)組對(duì)象的屬性。

delete可以用來(lái)從數(shù)組中移除元素,但由于一個(gè)元素就是一個(gè)屬性,delete會(huì)在數(shù)組中遺留一個(gè)“空洞”;被delete刪除的元素為undefined,使用splice方法可能是一個(gè)更好的辦法。例如要?jiǎng)h除arr數(shù)組的第3個(gè)元素,可以使用這樣的語(yǔ)句:arr.splice(2,1);不過對(duì)于大型數(shù)組來(lái)說(shuō),這個(gè)函數(shù)的效率可能不高。

9、html中設(shè)置了id的元素居然是js的全局變量哦

html頁(yè)面代碼如下所示

    

在chrome控制臺(tái)看到的結(jié)果如下圖所示

10、字符串居然能用下標(biāo)訪問

大家都知道字符串是不可變的,在js中也是如此。也就是說(shuō)一旦字符串被創(chuàng)建,就無(wú)法改變。但是我相信很少人知道在js當(dāng)中居然可以用下標(biāo)來(lái)訪問字符串當(dāng)中的某一個(gè)字符,雖然可以用下標(biāo)讀取但去不能修改哦(雖然修改操作不會(huì)報(bào)錯(cuò),但是卻不起作用)

11、字符串的一些方法

string的substring函數(shù)的用法和slice一樣,但是它不能處理負(fù)數(shù)參數(shù)。ECMAscript中也沒有對(duì)substr方法進(jìn)行標(biāo)準(zhǔn)化,所以如果要取一個(gè)字符串的子串,就用slice方法吧!

string的split(separator,limit)方法把string分割成片段,來(lái)創(chuàng)建一個(gè)字符串?dāng)?shù)組。可選參數(shù)limit可以限制被分割的片段數(shù)量。separator參數(shù)可以是一個(gè)字符串或一個(gè)正則表達(dá)式,并且來(lái)自分組捕獲的文本將會(huì)被包含在被分割后的數(shù)組中

var s = "str1 , str2 , str3";s.split(/s(,)s/,4);  
//輸出結(jié)果:["str1",",","str2",","]  

?

12、把瀏覽器當(dāng)成編輯器

瀏覽器地址欄輸入以下代碼,立馬就把瀏覽器變成notepad了,厲害吧!

data:text/html, 
13、垂直居中

大家都知道css里面用text-align:center加上margin:0 auto就可以實(shí)現(xiàn)水平居中了,但是垂直居中卻沒有相應(yīng)的css屬性來(lái)設(shè)置,而如果要設(shè)置元素能夠垂直居中必須得將容器設(shè)置為display:table,然后將子元素也就是要垂直居中顯示的元素設(shè)置為display:table-cell,然后加上vertical-align:middle來(lái)實(shí)現(xiàn)。

看代碼吧!下面的代碼利用css3的transform來(lái)實(shí)現(xiàn)垂直居中和水平居中

.center-vertical {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
}
.center-horizontal {
    position: relative;
    left: 50%;
    transform: translateX(-50%); 
}

轉(zhuǎn)自 快樂人生,積極進(jìn)取-總結(jié)的一些js的冷知識(shí)

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/91468.html

相關(guān)文章

  • 你不知道取數(shù)值整數(shù)部分知識(shí)

    摘要:我們可以用測(cè)一下具體實(shí)現(xiàn)原理,請(qǐng)參考文檔注意因?yàn)椴僮鲗⒉僮鲾?shù)轉(zhuǎn)為,所以它不能處理超過位的數(shù)值取整,而有效整數(shù)的范圍是位。綜上所以如果要考慮壓縮代碼的大小,且明確知道數(shù)值范圍不會(huì)超過位整數(shù)的時(shí)候,可以考慮使用取整。 在處理數(shù)值的時(shí)候,獲取浮點(diǎn)數(shù)的整數(shù)和小數(shù)部分,是一種常見的操作,在JavaScript中有許多方法可以達(dá)到目的,但也正因?yàn)榉椒ū姸?,所以哪種方法更好,也值得我們仔細(xì)研究一番。...

    calx 評(píng)論0 收藏0
  • 關(guān)于flex-shrink如何計(jì)算知識(shí)

    摘要:先回顧一下假設(shè)有一個(gè)內(nèi)包含三個(gè)子,寬度分別對(duì)于對(duì)于剩余空間分配比例的計(jì)算相信用過布局的都非常熟悉了。另外,我發(fā)現(xiàn)很多點(diǎn)贊數(shù)很多的文章,給出的計(jì)算公式是錯(cuò)誤的。 先回顧一下flex-grow 假設(shè)有一個(gè)div內(nèi)包含三個(gè)子div1, div2, div3,寬度分別200px.對(duì)于flex-grow對(duì)于剩余空間分配比例的計(jì)算相信用過flex布局的都非常熟悉了。這里還是簡(jiǎn)單列一下計(jì)算公式:假設(shè)...

    KaltZK 評(píng)論0 收藏0
  • 前端不為人知一面——前端冷知識(shí)集錦

    摘要:不聲明第三個(gè)變量的值交換我們都知道交換兩個(gè)變量值的常規(guī)做法,那就是聲明一個(gè)中間變量來(lái)暫存。但鮮有人去挑戰(zhàn)不聲明中間變量的情況,下面的代碼給出了這種實(shí)現(xiàn)。 前端已經(jīng)被玩兒壞了!像console.log()可以向控制臺(tái)輸出圖片等炫酷的玩意已經(jīng)不是什么新聞了,像用||操作符給變量賦默認(rèn)值也是人盡皆知的舊聞了,今天看到Quora上一個(gè)帖子,瞬間又GET了好多前端技能,一些屬于技巧,一些則是聞所...

    habren 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<