我的代码中有以下行:
var cart = $("#dynamo_shop_window .dynamo_content tbody .shop_cart").html();
但是,如果页面上没有匹配的元素,我希望 cart
的值是一个空字符串,即:
!$("#dynamo_shop_window .dynamo_content tbody .shop_cart").size();
如果是这种情况,var cart = null;
,无论如何根据 Chrome 的开发者工具。
要给它空字符串值,我有什么理由应该使用 cart = cart !== null 吗? cart : '';
在上面的代码之后,而不是将上面的代码替换为:
var cart = $("#dynamo_shop_window .dynamo_content tbody .shop_cart").html() || '';
.html()
永远不会返回 0
或任何其他与 false
相关的语句。
最佳答案
不,不是真的。只要左侧有 falsey 值,双管道运算符就会落到右侧,因此 undefined
、null
、NaN
、0
或 ""
。
如果在所有这些情况下,您希望 cart
成为 ""
:那就去做吧。使用 ||
。
关于javascript - 什么时候可以将管道运算符用于条件参数? - JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12009579/