IE在“上抛出异常”;self=this";用JavaScript?

IE在“上抛出异常”;self=this";用JavaScript?,javascript,internet-explorer,this,Javascript,Internet Explorer,This,我有一些面向对象的JS,在firefox中可以很好地工作,但在IE8中不行(尽管我们需要支持IE9) 当我这样做时: “自我=这个;” IE将其标记为错误。 我试图将其设置为self,然后在jquery回调中使用它来调用其他函数 方法在我的JS对象中 this.upd_params = function () { $("#add-parameter-modal").modal('hide'); var param_form = $('#add_param_form'); se

我有一些面向对象的JS,在firefox中可以很好地工作,但在IE8中不行(尽管我们需要支持IE9)

当我这样做时: “自我=这个;” IE将其标记为错误。 我试图将其设置为self,然后在jquery回调中使用它来调用其他函数
方法在我的JS对象中

this.upd_params = function () {
   $("#add-parameter-modal").modal('hide');

   var param_form = $('#add_param_form');
   self = this;
   this.added_params = [];
   this.removed_params = [];

   $('.unused_parameter').each(function (index, obj) {
     if (obj.checked) {
       id = self.get_idnum(obj.id);
       self.add_param2list(id);
     }
   });


   $('.used_parameter').each(function (index, obj) {
     if (!obj.checked) {
       id = self.get_idnum(obj.id);
       self.remove_param(id);
     }
   });

   this.upd_html();

   cfg_form_changed = true;

};

确保
self
是一个局部范围(非全局)变量

var self = this;

否则,
self
引用并分配给它是不允许的。

好的,我发布这篇文章是因为我相信它是相关的,并且对其他人有用, 如果执行内联变量赋值,如下代码所示:

var var1 = value1,
    var2 = value2,
    self= this;
它会在IE上抛出一个异常,表示未实现

您可以通过更改为以下内容来修复它:

var var1 = value1,
    var2 = value2;

var self= this;

@JaredFarrish哦,完全没有注意到:)FF会忽略这个任务。IE将在作业中引发异常。@pst感谢您提供的更具体的信息。不管怎样,这都不是我想要的行为。离我的一只眼睛被抓出来还有一分钟。谢谢