【发布时间】:2011-12-30 16:59:28
【问题描述】:
我们知道javascript逻辑运算符||如果第一个操作数为 true,则生成其第一个操作数的值。否则,它产生第二个操作数的值。
所以在这个例子中:
<script language="javascript">
function test (value){
this.value = value || "(value not given)";
}
</script>
如果传递给函数的参数value被视为false,如整数0或空字符串"" 然后 this.value 将被设置为 (value not given) 这不是 true 正确的(因为我们确实在传递一个值)。
所以问题是设置 this.value 的最佳方法是什么?
编辑:所有 4 个第一个答案都使用三元运算符“?”。我的问题是关于“||”运算符。
【问题讨论】:
-
我没有得到你的问题。
"(value not given)"强制转换为true。 -
请解释一下您所说的“
this.value将被设置为(value not given)这不是true”是什么意思。 -
@aadit-m-shah
(value not given)是当参数value被视为 false 时要分配的默认值。这个问题没有错误。
标签: javascript function default-value