Javascript条件判断小伎俩

BM1F4K

BM1F4K

2016-02-19 19:36

生活已是百般艰难,为何不努力一点。下面图老师就给大家分享Javascript条件判断小伎俩,希望可以让热爱学习的朋友们体会到设计的小小的乐趣。

我们已经知道,null 没有任何的属性值,并且无法获取其实体(existence)值。所以 null.property 返回的是错误(error)而不是 undefined 。

考虑下面的代码

if (node.nextSibling.className == ...) {
   ...
}

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/webkaifa/)

在 node 或者 node.nextSibling 为空(null)的情况下,会返回错误(error)。所以,通常情况下的解决方案的代码为

if ((node) && (next = node.nextSibling) && ... ) {
   ...
}

那么,当条件判断一多的情况下,代码会形成下面的情况

if (
(node) &&
(node.nextSibling) &&
(node.nextSibling.className == ...)
... ) {
   ...
}

随着判断条件的不断的增加,代码会变得非常的“丑陋”。

有个小的“伎俩”,可以简化条件判断表达式。我们可以增加个空对象({})或者零(0)作为替代

if ( next = (node || 0).nextSibling) ) {
   ...
}

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/webkaifa/)

那么,上述的代码就可以这样写

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

--Split--

就个人而言,上述的从某种角度而言,代码会非常的精简。但日常实际的编码过程中,尤其是多人配合的情况下,这些代码可能会给其他开发人员造成一定的困扰。

正如 小马 所言,如果已经在使用某些框架,需要具体问题具体分析。比如上述的条件判断代码,使用 YUI 编码就可以使用

YAHOO.util.Dom.hasClass(el, className)

显得更加的精简,并且相比上述的代码更容易理解。

展开更多 50%)
分享

猜你喜欢

Javascript条件判断小伎俩

Web开发
Javascript条件判断小伎俩

Javascript条件判断语句的小技巧

Web开发
Javascript条件判断语句的小技巧

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

javascript里的条件判断

Web开发
javascript里的条件判断

Javascript 篱式 条件判断

Web开发
Javascript 篱式 条件判断

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

JavaScript 判断来源网址

Web开发
JavaScript 判断来源网址

javascript判断中文的正则

Web开发
javascript判断中文的正则

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

Win10桌面怎么设置显示我的电脑图标

Win10桌面怎么设置显示我的电脑图标

数据库理论 学习基于SQL数据库的算法

数据库理论 学习基于SQL数据库的算法
下拉加载更多内容 ↓