【问题标题】:Why does logging an empty string variable in Edge return an object为什么在Edge中记录一个空字符串变量会返回一个对象
【发布时间】:2018-06-25 22:34:25
【问题描述】:

我在 Edge、Firefox 和 Chrome 的控制台上运行以下脚本:

var test=''; console.log(test);

在 Firefox 和 Chrome 上,我得到一个空字符串。然而,在 Edge 上,我得到以下信息:

{
    "notifyType": "consoleItemLog",
    "message": {
        "message": "",
        "styles": "",
        "hasFormatString": true,
        "fileUrl": "eval code (1)",
        "lineNumber": 1,
        "columnNumber": 14
    }
} 

我可以在两台装有 Edge 的计算机上确认这一点。谁能告诉我为什么会这样?这是什么意思?

【问题讨论】:

  • 所有浏览器都有自己的方式在控制台中表示值。它们不一致。
  • @Rajesh 乍一看,这看起来不像是表示空字符串的合理且有用的方式。不幸的是,我没有 Edge,所以我无法深入研究,但这很有趣。
  • @Rajesh 如果他们愿意,他们当然可以将“麸皮片”输出到控制台。我认为这里更好的问题是为什么在这种情况下不一致?
  • 这是一个不错的发现。我会将其确定为 Edge 部分的错误,因为这不是它应该如何表现。浏览器有自己的显示对象或数组的方式是可以接受的。但是这个?
  • console.log("") 也会发生这种情况吗? console.log(console.log("")) 你能得到什么?似乎控制台方法确实无意中返回了一个内部值而不是undefined

标签: javascript microsoft-edge console.log


【解决方案1】:

已针对your bug report 修复此问题。上面写着“Fixed in build # 17.17681”,这意味着该修复程序将随 Windows 10 RS5 一起提供(17681 是一个内部版本;最接近的 Insider 版本 17682 可能包含也可能不包含该修复程序,并且截至目前已经将近一个月了无论如何都要写这篇文章)。

【讨论】:

    猜你喜欢
    • 2013-10-22
    • 2021-12-21
    • 2012-03-19
    • 1970-01-01
    • 1970-01-01
    • 2013-05-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多