Javascript条件判断使用小技巧总结
JavaScript 使用 技巧 总结 判断 条件
2023-06-13 09:14:02 时间
考虑下面的代码
if(node.nextSibling.className==...){
...
}
在node或者node.nextSibling为空(null)的情况下,会返回错误(error)。所以,通常情况下的解决方案的代码为
if((node)&&(next=node.nextSibling)&&...){
...
}
那么,当条件判断一多的情况下,代码会形成下面的情况
if(
(node)&&
(node.nextSibling)&&
(node.nextSibling.className==...)
...){
...
}
随着判断条件的不断的增加,代码会变得非常的“丑陋”。
有个小的“伎俩”,可以简化条件判断表达式。我们可以增加个空对象({})或者零(0)作为替代
if(next=(node||0).nextSibling)){
...
}
那么,上述的代码就可以这样写
if(((node||0).nextSibling||0).className==...){
...
}
--Split--
就个人而言,上述的从某种角度而言,代码会非常的精简。但日常实际的编码过程中,尤其是多人配合的情况下,这些代码可能会给其他开发人员造成一定的困扰。
正如小马所言,如果已经在使用某些框架,需要具体问题具体分析。比如上述的条件判断代码,使用YUI编码就可以使用
YAHOO.util.Dom.hasClass(el,className)
显得更加的精简,并且相比上述的代码更容易理解。
if(node.nextSibling.className==...){
...
}
在node或者node.nextSibling为空(null)的情况下,会返回错误(error)。所以,通常情况下的解决方案的代码为
if((node)&&(next=node.nextSibling)&&...){
...
}
那么,当条件判断一多的情况下,代码会形成下面的情况
if(
(node)&&
(node.nextSibling)&&
(node.nextSibling.className==...)
...){
...
}
随着判断条件的不断的增加,代码会变得非常的“丑陋”。
有个小的“伎俩”,可以简化条件判断表达式。我们可以增加个空对象({})或者零(0)作为替代
if(next=(node||0).nextSibling)){
...
}
那么,上述的代码就可以这样写
if(((node||0).nextSibling||0).className==...){
...
}
--Split--
就个人而言,上述的从某种角度而言,代码会非常的精简。但日常实际的编码过程中,尤其是多人配合的情况下,这些代码可能会给其他开发人员造成一定的困扰。
正如小马所言,如果已经在使用某些框架,需要具体问题具体分析。比如上述的条件判断代码,使用YUI编码就可以使用
YAHOO.util.Dom.hasClass(el,className)
显得更加的精简,并且相比上述的代码更容易理解。
相关文章
- TypeScript(node)连接使用MySQL(JavaScript也一样)
- [译] JavaScript -- Map vs ForEach
- JavaScript 到底是不是面向对象语言?面向对象语言有哪三个基本特征?
- 【说站】javascript严格相等运算符如何使用
- 【说站】JavaScript使用递归定义阶乘函数
- javascript 手机号码正则表达式验证函数
- 前端(三)-JavaScript
- js 怎么使用正则表达式-JavaScript正则表达式常用技巧
- Javascript监测网络状况详解编程语言
- 使用MongoDB脚本实现JavaScript功能(mongodbjs脚本)
- JavaScript中this关键字使用方法详解
- Javascript中的Split使用方法与技巧
- JavaScript使用技巧精萃[代码非常实用]
- javascript页面只自动刷新一次
- javascript&&和||运算法的另类使用技巧
- javascript中的array数组使用技巧
- javascript正则表达式(二)使用技巧说明
- javascript,jquery闭包概念分析
- JavaScript使用过程中需要注意的地方和一些基本语法
- JavaScript高级程序设计(第3版)学习笔记5js语句
- 如何使用JavaScript和正则表达式进行数据验证
- JavaScript中json使用自己总结
- javascript中的作用域和上下文使用简要概述
- javascript使用onclick事件改变选中行的颜色
- javascript作用域和闭包使用详解
- 在HTML代码中使用JavaScript代码的例子
- JavaScript中的ubound函数使用实例
- JavaScript-RegExp对象只能使用一次问题解决方法
- JavaScript中伪协议javascript:使用探讨
- Javascript的setTimeout()使用闭包特性时需要注意的问题
- JavaScript设计模式之观察者模式(发布者-订阅者模式)