在javascript中,我有一个日志输出选项,它允许使用元素/选择器来指定输出日志/错误消息的位置。输出在初始化时格式化,如下所示:
var $messageOutput = options.messageOutputElement ? $(options.messageOutputElement) : null;
稍后通过日志功能使用它:
function outputMessage(msg)
{
if ($messageOutput !== null)
{
messageNum++;
var $messageOutput = $(options.messageOutputElement);
var html = $messageOutput.html();
html += '<b>' + messageNum + '</b><br/>' + msg + '<br/>';
$messageOutput.html(html);
$messageOutput.scrollTop($messageOutput[0].scrollHeight);
}
}
问题是即使 $messageOutput === null,outputMessage() 中的 if 语句也会失败。我已经用 Chome 的调试器验证了 $messageOutput 确实等于 null。事实上,它无论如何都会进入 if 语句。
谁能告诉我为什么会发生这种情况?提前感谢您对此事的任何意见。