在javascript问题中访问对象

时间:2018-01-19 09:02:21

标签: javascript

这是我的console.log(params)

的结果
currency_id: false
customer_id: 127505
"payment[account_name]": ""
"payment[iban]": ""
"payment[method]": "adyen_sepa"
store_id: "1"

我从ajax调用中得到了这个,当我这样做时onSuccess

 console.log(params.customer_id);  // I got the right value
 console.log(params.payment['method'])  // I am getting undefined
 var obj = "payment['method']";
 console.log(params.obj)  // still undefined 

如何从payment[method]获取价值? Thnx

3 个答案:

答案 0 :(得分:1)

  

如何从付款[方法]中获取价值?日Thnx

使用括号表示法

var obj = "payment[method]";
console.log(params[obj])

<强>演示

var params = {
  currency_id: false,
  customer_id: 127505,
  "payment[account_name]": "",
  "payment[iban]": "",
  "payment[method]": "adyen_sepa",
  store_id: "1"
}

var obj = "payment[method]";
console.log(params[obj])  

答案 1 :(得分:0)

这有点令人困惑,因为密钥名称中包含括号,因此当您接近原始代码时,请尝试使用此代码:

params['payment[method]']

使用括号表示法,您可以在引号中放置键名(JS对象中的所有键名都是字符串)。

答案 2 :(得分:0)

试试这个,

var output = {
    currency_id: false,
    customer_id: 127505,
    "payment[account_name]": "",
    "payment[iban]": "",
    "payment[method]": "adyen_sepa",
    store_id: "1"
}
console.log(output['payment[method]']);