值为“错误”的字符串是某种保留字
Is string with a value of "Error" some sort of reserved word?
所以我的页面上有以下一行Javascript:
form.display.value = 'Error';
其中显示是我的页面上文本类型的输入:
<input type="text" id="calcDisplay" name="display" maxlength="25">
在 Chrome 中,这工作得很好,使输入元素的值为"错误"。但是在IE 10和Firefox中,输入的内容如下:
function Error() { [native code]}
谁能解释一下这里发生了什么,为什么?
更新:这是被调用的实际函数:
function compute(form) {
try {
form.display.value = eval(form.display.value);
} catch(e) {
form.display.value = 'Error';
}
}
这是它的视频,所以你们不要认为我疯了:
http://screencast.com/t/sq9xXrnf
当值Error
已在输入中时,此行:
form.display.value = eval(form.display.value);
。将计算到您之前定义的函数Error
。因此,这必须在第二次调用compute
函数时发生。
请注意,浏览器与eval
的工作方式不一致,这就是您看到浏览器差异的原因。
相关文章:
- 调试器;[错误]194:11:标识符是一个保留字
- 复杂Regex:如何穿't匹配//之后的保留字
- 在nodejs'inspect'表现得像个保留字
- 使用特征检测通过点表示法检查对保留字的支持
- 为什么“;闭合的“;保留字是JS
- 保留字行为
- 命名函数“;删除“..删除是一个保留字
- 自定义 eslint 规则抛出意外的保留字
- 在带有猫鼬的 JSLint 中抑制“预期标识符,而是看到”默认“(保留字)”
- 是否可以在JS中获取保留字(变量,函数,对象名称)的列表
- “parent”不应该用作javascript变量名(保留字)
- 如何在 dialog() 模式弹出窗口中的部分视图之间保留字段数据
- 为什么我的 JavaScript 哈希带有保留字“toString”作为显示 NaN 的键
- JavaScript 中的保留字列表
- self 在 JavaScript 中不是一个保留字 - 所以它是如何在没有在我的脚本中定义的的情况下使用它的
- 值为“错误”的字符串是某种保留字
- 意外使用保留字'让'在严格模式下
- Regexp保留json字符串中的值
- JavaScript 模块 - 语法错误:export.runInThisContext 中的意外保留字
- 当代码包含保留字时,设置代码的CSS