Is there any difference between (cond && value || de
Is there any difference between (cond && value || default_value) and (cond ? value : default_value) in JavaScript?
这两个表达式似乎生成了相同的结果。它们之间有什么区别吗?
如果您的cond
条件是truthy,但value
不是,则第一个表达式将转到default_value
,而第二个表达式将在cond
为truthy后立即给出value
,而不管实际的value
是什么。
示例:
var cond = true,
value = false,
default_value = "whatever";
cond && value || default_value; // gives "whatever"
cond ? value : default_value; // gives `false`
value = "truthy";
cond && value || default_value; // gives "truthy"
cond ? value : default_value; // gives "truthy"
value = null; // or `undefined`, or "" (empty string), or any falsy value.
cond && value || default_value; // gives "whatever"
cond ? value : default_value; // gives `null` (or `undefined`, or "")
// or whatever is in `value`
现场演示:http://jsfiddle.net/artxvLab/
相关文章:
- jquery点击函数select&取消选择
- Windows8应用程序(html&Javascript):从图片库(除了文件选择器)显示图像的另一种方式
- Angular js-返回一个包含类似
- 一点javascript元编程&可链接的设置器
- 通过JSON&比较时间
- Jquery模板,如果xx&&如果yy
- jQuery工具验证器自定义效果-添加&消除影响
- Twitter引导程序Typeahead-Id&标签
- AngularJS&JSON-从Previous&下一个对象
- 什么是&&在没有if的行中的变量之间
- 关于引入外部javascript文件的问题&css通过https
- 指令的模板必须只有一个根元素:With restrict E&替换true
- 使用ajax的服务器端分页&jQuery
- Javascript,如果条件在没有&&逻辑运算符当&&它不起作用
- 如何使用dropzone&vueJs
- 如何准确执行加载脚本&退出弹出窗口
- 如何添加CSS&JavaScript进入Windows窗体应用程序C#.net
- Solr查询以按日期月份获取数据&年
- 显示&作为&在jsp中使用angularjs而不使用ng-bind-html
- 如何惯用地手动销毁scope&在AngularJS中重新创建