最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Javascript 籬式條件判斷

 更新時間:2008年08月22日 12:54:20   作者:  
我們已經(jīng)知道,null 沒有任何的屬性值,并且無法獲取其實(shí)體(existence)值。所以 null.property 返回的是錯誤(error)而不是 undefined 。
考慮下面的代碼

if (node.nextSibling.className == ...) {
...
}
在 node 或者 node.nextSibling 為空(null)的情況下,會返回錯誤(error)。所以,通常情況下的解決方案的代碼為

if ((node) && (next = node.nextSibling) && ... ) {
...
}
那么,當(dāng)條件判斷一多的情況下,代碼會形成下面的情況

if (
(node) &&
(node.nextSibling) &&
(node.nextSibling.className == ...)
... ) {
...
}
隨著判斷條件的不斷的增加,代碼會變得非常的“丑陋”。

有個小的“伎倆”,可以簡化條件判斷表達(dá)式。我們可以增加個空對象({})或者零(0)作為替代

if ( next = (node || 0).nextSibling) ) {
...
}
那么,上述的代碼就可以這樣寫

if (((node || 0).nextSibling || 0).className == ...) {
...
}
--Split--

就個人而言,上述的從某種角度而言,代碼會非常的精簡。但日常實(shí)際的編碼過程中,尤其是多人配合的情況下,這些代碼可能會給其他開發(fā)人員造成一定的困擾。

正如 小馬 所言,如果已經(jīng)在使用某些框架,需要具體問題具體分析。比如上述的條件判斷代碼,使用 YUI 編碼就可以使用

YAHOO.util.Dom.hasClass(el, className)
顯得更加的精簡,并且相比上述的代碼更容易理解。

相關(guān)文章

  • 代碼塊高亮可復(fù)制顯示js插件highlight.js+clipboard.js整合

    代碼塊高亮可復(fù)制顯示js插件highlight.js+clipboard.js整合

    最近有個需求是將jsp頁面上的某一段代碼塊格式化成類似CSDN的代碼塊的樣式,而且很多平臺都使用了這樣的功能,下面就為大家簡單分享一下
    2021-02-02
  • JavaScript Cookie的讀取和寫入函數(shù)

    JavaScript Cookie的讀取和寫入函數(shù)

    Cookie的讀取和寫入實(shí)現(xiàn)函數(shù)。
    2009-12-12
  • 一文吃透JS樹狀結(jié)構(gòu)的數(shù)據(jù)處理(增刪改查)

    一文吃透JS樹狀結(jié)構(gòu)的數(shù)據(jù)處理(增刪改查)

    在開發(fā)后臺管理系統(tǒng)時,常常會涉及到各種樹狀結(jié)構(gòu)的數(shù)據(jù)處理邏輯,例如:增,刪,改,查等。而樹狀結(jié)構(gòu)的處理就沒有數(shù)組那么的直觀。本文為大家總結(jié)了JS樹狀結(jié)構(gòu)的數(shù)據(jù)處理的方法,需要的可以參考下
    2022-07-07
  • JavaScript Reflect Metadata實(shí)現(xiàn)詳解

    JavaScript Reflect Metadata實(shí)現(xiàn)詳解

    這篇文章主要介紹了JavaScript Reflect Metadata實(shí)現(xiàn)詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • 一文帶你搞懂JavaScript中數(shù)組的特性

    一文帶你搞懂JavaScript中數(shù)組的特性

    數(shù)組是幾乎所有編程語言的基礎(chǔ)語法,JavaScript因?yàn)檎Z法特性,我們更需要理解數(shù)組知識。本文從JavaScript中數(shù)組的一些特殊之處入手,通過這些少有特性的詳細(xì)介紹,加深我們對數(shù)組的理解
    2023-04-04
  • JavaScript設(shè)計模式之抽象工廠模式介紹

    JavaScript設(shè)計模式之抽象工廠模式介紹

    這篇文章主要介紹了JavaScript設(shè)計模式之抽象工廠模式介紹,抽象工廠模式就是對功能類單獨(dú)創(chuàng)建工廠類,這樣就不必修改之前的代碼,又?jǐn)U展了功能,需要的朋友可以參考下
    2014-12-12
  • 基于javascript html5實(shí)現(xiàn)3D翻書特效

    基于javascript html5實(shí)現(xiàn)3D翻書特效

    這篇文章主要介紹了基于javascript html5實(shí)現(xiàn)翻書特效的實(shí)現(xiàn)方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-03-03
  • 純JS實(shí)現(xiàn)根據(jù)CSS的class選擇DOM

    純JS實(shí)現(xiàn)根據(jù)CSS的class選擇DOM

    這篇文章主要介紹了純JS實(shí)現(xiàn)根據(jù)CSS的class選擇DOM,需要的朋友可以參考下
    2014-03-03
  • JavaScript字符串轉(zhuǎn)數(shù)字的簡單實(shí)現(xiàn)方法

    JavaScript字符串轉(zhuǎn)數(shù)字的簡單實(shí)現(xiàn)方法

    這篇文章主要給大家介紹了關(guān)于JavaScript字符串轉(zhuǎn)數(shù)字的簡單實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • layui數(shù)據(jù)表格跨行自動合并的例子

    layui數(shù)據(jù)表格跨行自動合并的例子

    今天小編就為大家分享一篇layui數(shù)據(jù)表格跨行自動合并的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09

最新評論

沾化县| 上饶县| 南宁市| 依安县| 陕西省| 安泽县| 宜宾县| 内黄县| 铜鼓县| 嘉善县| 罗源县| 黄大仙区| 衢州市| 凤翔县| 揭西县| 揭西县| 元谋县| 建阳市| 永安市| 黎川县| 阿鲁科尔沁旗| 东宁县| 望城县| 大同县| 烟台市| 虎林市| 瑞金市| 太仆寺旗| 襄垣县| 广河县| 柏乡县| 分宜县| 金秀| 塔城市| 临颍县| 革吉县| 广元市| 乌兰县| 和平县| 孟州市| 三穗县|