无法使用新的关键字在IE中创建对象

时间:2013-07-01 06:22:43

标签: javascript internet-explorer

var com = {};
var com.Project = function(){
   this.display = function(){
   alert("hai.....");
   }
}
var project_obj = new com.Project();

在创建project_obj时我在IE9中遇到错误,例如“对象不支持此操作”

此代码在firefox和chrome中运行良好。 我给出了一个示例代码。 我正在尝试在javastript中使用类和包概念。

我不知道为什么这个错误出现在IE中。

3 个答案:

答案 0 :(得分:2)

这在所有浏览器中都是非法的,并引发语法错误:

var com.Project = function(){

你可以这样做:

var com = {}; // whatever
com.Project = function(){

答案 1 :(得分:2)

问题是第1行,因为变量名不能包括.

如果您尝试namespace,则需要先将com定义为Object Project作为其中一个属性:

var com = {
    Project: function () {
        // etc.
    }
};

答案 2 :(得分:0)

根据您的javascript代码的工作链接,我认为您应该更改此

$.extend(true, window, container[0]);

$.extend(true, window, d);