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

Javascript 籬式條件判斷

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

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

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

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

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

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

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

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

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

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

相關(guān)文章

最新評論

榆林市| 佳木斯市| 五寨县| 确山县| 万安县| 屏东县| 临潭县| 德江县| 盐源县| 任丘市| 靖远县| 息烽县| 三门县| 沾益县| 丹凤县| 本溪市| 建宁县| 阿尔山市| 集贤县| 依安县| 乌兰浩特市| 夹江县| 崇义县| 东方市| 永泰县| 绩溪县| 沙河市| 法库县| 荣昌县| 巴塘县| 叶城县| 库车县| 台东市| 沾化县| 法库县| 高台县| 冕宁县| 万全县| 安吉县| 油尖旺区| 韩城市|