来自Javascript文件的方法将加载到IE而不是Chrome

时间:2014-06-19 12:08:41

标签: javascript internet-explorer google-chrome

网页正在加载几个不同的javascript文件,所有这些文件都在Chrome控制台的“来源”标签中正确显示,但是尝试从其中一个页面调用方法会导致控制台显示“未捕获的参考错误:未定义”不是函数“或”未捕获的参考错误:[函数名称]未定义“取决于函数声明的方式 1 。 Chrome控制台中还存在错误,因为“Uncaught SyntaxError:赋值中的左侧无效”来自不会加载的页面,但IE中不存在该错误。该错误来自以下函数:

ListOfNumbers.prototype.reset = function () {
    this = new ListOfNumbers;
};

为什么我无法访问该页面上的任何功能?

<小时/> 1 错误消息的区别在于

  1. variableName = function() {}; 生成undefined is not a function,而
  2. function functionName() {} 产生functionName is not defined

1 个答案:

答案 0 :(得分:0)

Javascript function using “this = ” gives “Invalid left-hand side in assignment”中解释了无效的左侧错误。如果您尝试运行该功能,IE将提供相同的错误,您可以通过输入

自行查看
var test = new ListOfNumbers(); test.reset();
在IE的控制台中

IE仅在尝试运行该功能时检测到错误,但Chrome会在页面加载时检测到它,然后阻止该javascript文件中的任何内容运行,即使它仍然会在“Sources”下显示该文件。修复无效的左侧也应解决Chrome问题。