变量为空时javascript中的三元运算符
我在php变量为空时javascript中的三元运算符,javascript,php,operator-keyword,ternary,Javascript,Php,Operator Keyword,Ternary,我在php中使用了三元运算符$foo=get_字段('foo')?:null但我正在寻找javascript中的等效版本。到目前为止,我已经尝试了var foo=| | null。但是由于本例中的为null/empty,因此控制台将向我提供错误未捕获的语法错误:意外标记| |,因为变量为var foo=| | null 在javascript中使用三元运算符还有其他方法吗 您需要从php返回一个falsy值。你的代码几乎是正确的。它只是缺少了它周围的引号 var foo = '<?php
中使用了三元运算符$foo=get_字段('foo')?:null
但我正在寻找javascript中的等效版本。到目前为止,我已经尝试了var foo=| | null代码>。但是由于本例中的
为null/empty,因此控制台将向我提供错误未捕获的语法错误:意外标记| |
,因为变量为var foo=| | null代码>
在javascript中使用三元运算符还有其他方法吗 您需要从php返回一个falsy值。你的代码几乎是正确的。它只是缺少了它周围的引号
var foo = '<?php echo $foo; ?>' || null;
console.log('foo', foo); // null
var foo=''|| null;
console.log('foo',foo);//无效的
这是因为当$foo为空时,它将var foo=''| | null代码>
由于'
在Javascript中是falsy,它将返回null。您需要从php返回一个falsy值。你的代码几乎是正确的。它只是缺少了它周围的引号
var foo = '<?php echo $foo; ?>' || null;
console.log('foo', foo); // null
var foo=''|| null;
console.log('foo',foo);//无效的
这是因为当$foo为空时,它将var foo=''| | null代码>
由于'
在Javascript中是错误的,它将返回null。您的问题与三元运算符无关,而是与PHP输出到Javascript有关。最安全的方法是:
var foo = <?php echo json_encode($foo); ?> || null ;
var foo=| | null;
json\u encode()
函数确保变量以JS理解的形式回送。您的问题与三元运算符无关,而是与PHP输出到javascript有关。最安全的方法是:
var foo = <?php echo json_encode($foo); ?> || null ;
var foo=| | null;
json\u encode()
函数确保变量以JS理解的形式回送。var foo=(“”)?“”:无效
没有工作?你的JS应该工作,当$foo
为null
@smarber时,只需从PHP输出一个“falsy”值。问题似乎是PHP代码没有输出任何东西,所以JS仍然会出错。请注意
var foo=(“”)周围的引号:无效
不起作用?JS应该起作用,当$foo
为null
@smarber时,只需从PHP输出一个“falsy”值。问题似乎是PHP代码没有输出任何内容,所以JS仍然会出错。请注意
周围的引号