Javascript “微软边缘”;对方法或属性访问的意外调用“;toLocaleDateString

Javascript “微软边缘”;对方法或属性访问的意外调用“;toLocaleDateString,javascript,microsoft-edge,Javascript,Microsoft Edge,我有一段Javascript代码,上面写着 var timeStamp = new Date().toLocaleTimeString() 它已经工作了好几个月了。然后,昨天(2016年10月16日),一个运行代码的用户引发了错误 对方法或属性访问的意外调用 为此,请使用toLocaleDateString的类似行 该用户似乎正在运行Microsoft Edge/Windows 10。他们说,过去他们成功地访问了该网站。用户代理字符串 Mozilla/5.0(Windows NT 10.0)A

我有一段Javascript代码,上面写着

var timeStamp = new Date().toLocaleTimeString()
它已经工作了好几个月了。然后,昨天(2016年10月16日),一个运行代码的用户引发了错误

对方法或属性访问的意外调用

为此,请使用
toLocaleDateString
的类似行

该用户似乎正在运行Microsoft Edge/Windows 10。他们说,过去他们成功地访问了该网站。用户代理字符串

Mozilla/5.0(Windows NT 10.0)AppleWebKit/537.36(KHTML,类似Gecko)Chrome/51.0.2704.79 Safari/537.36 Edge/14.14393

与my Edge/Windows 10相同,可以正常工作

他们显然启用了JavaScript执行,因为代码随后调用了onerror代码,该代码将JS遇到的错误的副本写入服务器日志文件,但我不明白为什么会抛出原始错误。在我的系统上,new Date().toLocaleDateSTring()提供了预期的结果(我知道结果中包含的未打印字符)

有人知道这一个网站上发生了什么使它在这里失败吗

更多信息:我设法在目标用户的系统上运行了一些测试JavaScript,并让他们向我发送结果

var dateobj = new Date()
toString()包含一个带有时间和日期的合理格式字符串

dateobj.toLocaleTimeString()
失败了。然而

"toLocaleTimeString" in dateobj
返回true,并且

typeof dateobj.toLocaleTimeString
是“功能”

那为什么我不能调用它呢

它在我的系统上以相同的规格运行良好(意思是:用户代理字符串匹配-以及来自navigator对象的其他输出)。我已经检查过他们没有安装任何边缘扩展。还有什么会影响这一点

莫纳桑

更新

在目标边缘浏览器的JavaScript控制台中尝试了一些操作。。。这很奇怪-它不会执行它-但它是一个函数

x=新日期()
[日期]2016年10月26日星期三10:18:30 GMT+0100(GMT夏令时)
y=x.toLocaleDateString()
错误
x、 toLocaleDateString
是一个函数


(具体细节请参见)

请打开浏览器控制台,检查浏览器是否处于怪癖/兼容模式。并尝试分别执行该代码片段。Microsoft Edge没有(似乎有)我可以使用的兼容模式?您是否发现了问题?我现在遇到了同样的问题…:/不,这还没有解决。如果你发现了什么,请告诉我。