Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用另一个对象访问JavaScript对象?_Javascript - Fatal编程技术网

如何使用另一个对象访问JavaScript对象?

如何使用另一个对象访问JavaScript对象?,javascript,Javascript,我正在尝试使用以下方法访问easeSegmentNameMap的属性: easeSegmentNameMap["EMAIL_ENGAGED"].text 我得到了未定义的,,如果我使用: easeSegmentNameMap["EMAIL_ENGAGED"].name var easeSegmentNameMap = { "EMAIL_ENGAGED": { name: "emailEngaged" }, "EMAIL_INACTIVE": { name: "em

我正在尝试使用以下方法访问
easeSegmentNameMap
的属性:

easeSegmentNameMap["EMAIL_ENGAGED"].text
我得到了未定义的
,如果我使用:

easeSegmentNameMap["EMAIL_ENGAGED"].name

var easeSegmentNameMap = {
  "EMAIL_ENGAGED": {
    name: "emailEngaged"
  },
  "EMAIL_INACTIVE": {
    name: "emailInactive"
  },
  "LIKELY_TO_THRIVE": {
    name: "likelyToThrive"
  },
  "MOST_VALUABLE_SUBSCRIBERS": {
    name: "mostValuableSubscribers"
  },
  "NEARLY_INACTIVE": {
    name: "nearlyInActive"
  },
  "NEVER_ACTIVATED": {
    name: "neverActivated"
  },
  "QUESTION_MARKS": {
    name: "questionMarks"
  }
};

var text = "name";
alert(easeSegmentNameMap["EMAIL_ENGAGED"].text);
输出:

undefined
我做错了什么?

试试这个:

alert(easeSegmentNameMap["EMAIL_ENGAGED"][text]);
text
是一个变量,必须进行插值。

尝试以下操作:

alert(easeSegmentNameMap["EMAIL_ENGAGED"][text]);

text
是一个变量,必须进行插值。

只需使用
[]
括号表示法即可。每当需要使用变量访问任何对象属性时,都需要使用
[]
符号

var easeSegmentNameMap={
“已使用电子邮件”:{
姓名:“电子邮件订婚”
},
“电子邮件未激活”:{
名称:“emailInactive”
},
“可能繁荣”:{
名称:“可能繁荣”
},
“最有价值的订户”:{
名称:“mostValuableSubscribers”
},
“几乎不活动”:{
名称:“几乎不活动”
},
“从未激活”:{
名称:“从未激活”
},
“问号”:{
姓名:“问号”
}
};
var text=“name”;

console.log(easeSegmentNameMap[“EMAIL_ENGAGED”][text])只需要使用括号符号。每当需要使用变量访问任何对象属性时,都需要使用
[]
符号

var easeSegmentNameMap={
“已使用电子邮件”:{
姓名:“电子邮件订婚”
},
“电子邮件未激活”:{
名称:“emailInactive”
},
“可能繁荣”:{
名称:“可能繁荣”
},
“最有价值的订户”:{
名称:“mostValuableSubscribers”
},
“几乎不活动”:{
名称:“几乎不活动”
},
“从未激活”:{
名称:“从未激活”
},
“问号”:{
姓名:“问号”
}
};
var text=“name”;
console.log(easeSegmentNameMap[“EMAIL_ENGAGED”][text])您无法访问

var text="name";
alert(easeSegmentNameMap["EMAIL_ENGAGED"].text);
文本仍然是属性,在本例中,它不是变量。 如果要访问变量,应按如下方式访问:

alert(easeSegmentNameMap["EMAIL_ENGAGED"][text]);
您无法访问

var text="name";
alert(easeSegmentNameMap["EMAIL_ENGAGED"].text);
文本仍然是属性,在本例中,它不是变量。 如果要访问变量,应按如下方式访问:

alert(easeSegmentNameMap["EMAIL_ENGAGED"][text]);

没有
文本
,只有
名称
。为什么要获取
text
?对象上没有键“text”的属性。只有一个属性,它的键是“name”。没有
text
,只有
name
。为什么要获取
text
?对象上没有键“text”的属性。只有一个属性,它具有键“name”。