如何在javascript中将值传递给对象?

时间:2013-07-31 13:09:02

标签: javascript javascript-events

我认为我认为在JavaScript中称为对象(?):

     paymentwindow = new PaymentWindow({
         'merchantnumber': "XXXXXX",
         'amount': '10500',
         'currency': "DKK"
     });

现在我想为对象设置金额值。类似的东西:

paymentwindow.amount = '20000';

然而,这不起作用。我确信这很简单,但我找不到解决方案。

3 个答案:

答案 0 :(得分:2)

  

现在我希望能够从对象外部设置数量。

这很容易或不可能,具体取决于对象的外观。

如果构造函数设置如下:

function PaymentWindow(options) {
    this.amount = options.amount;
}

然后它很容易,完全按照你的建议工作。附加到this的任何内容都将成为公共财产。

但是,如果构造函数设置如下:

function PaymentWindow(options) {
    var amount = options.amount;
}

那么这是不可能的,因为var amount对构造的对象是私有的。

答案 1 :(得分:1)

首先在构造函数

中声明它
function myObject(){
   this.myMemberVariable = 123;
   this.anotherOne = "hello";
}

答案 2 :(得分:0)

那一定是因为Object PaymentWindow未定义。这适用于Chrome中的JS控制台甚至:

paymentwindow = new Object({
         'merchantnumber': "XXXXXX",
         'amount': '10500',
         'currency': "DKK"
     });

// Object {merchantnumber: "XXXXXX", amount: "10500", currency: "DKK"}

paymentwindow.amount = '20000'

// Object {merchantnumber: "XXXXXX", amount: "20000", currency: "DKK"}

确保PaymentWindow在您使用“new”关键字进行实例化的范围内可用。如果在运行原始代码后在浏览器中打开JavaScript控制台,您可能会看到:

ReferenceError: PaymentWindow is not defined