首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >具有"Error“值的字符串是否是某种类型的保留字?

具有"Error“值的字符串是否是某种类型的保留字?
EN

Stack Overflow用户
提问于 2013-09-06 20:45:49
回答 1查看 116关注 0票数 0

因此,我的页面上有一行Javascript:

代码语言:javascript
复制
form.display.value = 'Error';

其中显示是在我的页面上输入的文本类型:

代码语言:javascript
复制
<input type="text" id="calcDisplay" name="display" maxlength="25">

在Chrome中,这很好地使输入元素的值变为"Error“。但是在IE 10和Firefox中,输入的内容如下:

代码语言:javascript
复制
function Error() {    [native code]}

有人能解释这是怎么回事吗?为什么?

更新:这是正在调用的实际函数:

代码语言:javascript
复制
function compute(form) {
   try {
      form.display.value = eval(form.display.value);
   } catch(e) {
      form.display.value = 'Error';
   } 
}

这是它的视频,所以你们不会认为我疯了:

http://screencast.com/t/sq9xXrnf

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-06 21:03:46

当值Error已经在输入中时,这一行:

代码语言:javascript
复制
form.display.value = eval(form.display.value);

...is将计算到您前面定义的函数Error。因此,这必须发生在对compute函数的第二次调用中。

请注意,浏览器与eval的工作方式不一致,这就是您看到浏览器差异的原因。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18666315

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档