在JavaScript三元运算中不能计算null值



我有一个带有此函数的javascript游戏,当用户悬停在某个元素上时,它会显示数据。

这就是它的样子:

gameRendering: function (game, e) {
var playerCharacterTitle = game.playerCharacterTitle;

$(user).hover({
content: '<b>Game Characters</b>'
+ (playerCharacterTitle) !== null ? '<b>PC Name:</b> ' + playerCharacterTitle : ''
});

当名为playerCharacterTitle的变量不为null时,我希望它显示以下内容:;PC名称:{the_Name}"当名称为null时,我希望它不显示任何内容。

像这样:

PC Name: Gorak
PC Name: LeMara

但出于某种原因,它仍在显示";PC名称:";然后是一个"null"。。。像这样:

PC Name: Gorak
PC Name: null
PC Name: LeMara
PC Name: null

我没有犯任何错误,只是得到了我不喜欢的结果。

我可能做错了什么?

谢谢!

您忘记了放括号(所谓的运算符优先级规则(:

gameRendering: function (game, e) {
var playerCharacterTitle = game.playerCharacterTitle;

$(user).hover({
content: '<b>Game Characters</b>'
+ (playerCharacterTitle !== null ? '<b>PC Name:</b> ' + playerCharacterTitle : '')
});

function gameRendering(game, e) {
var playerCharacterTitle = game.playerCharacterTitle;

//$(user).hover({
var content = '<b>Game Characters</b>'
+ (playerCharacterTitle !== null ? '<b>PC Name:</b> ' + playerCharacterTitle : '')
//});
console.log(content)
}
gameRendering({playerCharacterTitle: null}, 'a');
gameRendering({playerCharacterTitle: "SomeName"}, 'a');

最新更新