我有一个这样的数组:
elements = new Array(
{opinions: 'p31/php/endpoint.php?get=opinions'}, // function to call and API endpoint, php/endpoint.php
{top3positive: 'p31/php/endpoint.php?get=top3positive'}, // function to call andAPI endpoint, php/endpoint.php
{top3negative: 'p31/php/endpoint.php?get=top3negative'} // function to call andAPI endpoint, php/endpoint.php
);
我想要获得价值。例如,简单的事情是:elements[0].opinions
将正确返回p31/php/endpoint.php?get=opinions
事实是,我需要在不直接了解值的情况下获得相同的信息。
所以我正在做以下事情:
function getEndPoint(element) {
for (index in elements) {
if (Object.getOwnPropertyNames(elements[index]) == element) {
console.log(eval(elements[index]. element));
}
}
}
例如, element
代表意见。
当我执行console.log(eval(elements[index]. element));
时,它未正确返回p31/php/endpoint.php?get=opinions
但返回未定义。
我还尝试使用eval()
来评估从字符串到可运行代码的element
,但没有。
我做错了什么? 感谢
答案 0 :(得分:1)
使用
elements[index][element]
但这不仅仅是你想要的吗?
elements[element]
另外,使用===而不是== ...