在JS中使用点运算符从字符串数组访问具有键的JSON对象不起作用

时间:2019-02-18 10:05:26

标签: javascript php json

我获得的JSON对象来自另一个通过$.ajax()调用的PHP文件。例如,我从PHP文件中返回了echo json_encode(array('a' => 'b'))

然后,我有以下$.ajax()代码:

let objKey = ['a'];

$.ajax({
  type        : 'POST',
  url         : 'phpfilehere.php',
  dataType    : 'json',

  success     : function(obj) {
      alert(obj.objKey[0]);
  }
});

它应该已经警告b而不是undefined。然后,我尝试了alert(obj.a)并成功了。它提醒b。如何使用全部与所述JSON对象的键相对应的字符串数组访问JSON对象的值?

2 个答案:

答案 0 :(得分:1)

obj.objKey[0]在您的情况下为假,如果您的对象像这样,则很好:

obj = { 'objKey': ['b'] }

您有两种解决方案

alert(obj[objKey[0]]);

alert(obj.a);

参考

答案 1 :(得分:-1)

我认为这应该像:const