【问题标题】:Passing object to a function as an argument in javascript将对象作为javascript中的参数传递给函数
【发布时间】:2011-06-08 20:23:03
【问题描述】:

我正在尝试将对象传递给函数,但是当我尝试输出对象时,它显示“未定义”。这是一个例子:

// object defined
this.object = new Ext.data.JsonStore({
  //some store properties
});

// printing object
function printObject (obj) {
   alert(obj); // my output is "undefined"
}

// trying to pass the object
printObject(this.object);

谁能告诉我如何将对象作为参数传递?在此先感谢

【问题讨论】:

  • 您遇到了范围界定问题。您需要显示更多代码,以便我们帮助您查看问题所在。另外,我怀疑命名任何属性或变量object 都会有问题
  • 如果您在分配 this.obejct 后立即提醒它怎么办?也许它根本没有被赋值。以这种方式将对象传递给函数是很有可能的,
  • 显示对象包含的属性

标签: javascript object arguments


【解决方案1】:

这里的上下文是什么,this指的是什么,另一个对象?尝试将其称为“对象”以外的其他名称,也许是“数据”。不是 100% 确定,但我认为“对象”可能会被保留。

【讨论】:

    【解决方案2】:

    可能是函数pringObject(而不是printObject)未定义。

    【讨论】:

      【解决方案3】:

      试试这个:

      var obj = new Ext.data.JsonStore({
        //some store properties
      });
      

      这样 obj 被隐式转换为 JsonStore 返回的类型的对象

      【讨论】:

        猜你喜欢
        • 2019-08-29
        • 1970-01-01
        • 2017-12-20
        • 2018-02-23
        • 2012-05-30
        • 2021-04-15
        • 2018-03-15
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多