我如何根据javascript字符串的值获取特定对象?

时间:2011-07-30 16:21:54

标签: javascript object

我有单独的javascript文件来加载自定义对象;这些对象旨在在读取主函数时扩展一些默认参数

他们看起来都像

 var str1= { path:'url1:, var1:5};
 var str2= { path:'url2:, var1:3};
 etc...

我有一个字符串数组(通过加载rss页面生成),我想根据它的名称是否与对象名称匹配来返回该对象。硬编码会破坏目的

3 个答案:

答案 0 :(得分:1)

看看this question。它显示了如何使用字符串引用对象。我能看到的唯一区别是,不是从window对象开始,而是从任何定义当前范围的对象开始(例如this)。

答案 1 :(得分:0)

您可以使用方括号表示法来引用其键名保存在变量中的对象属性:

var key = 'path';
var str1 = { path: 'url', var1: 1};
var value = str1[key]; // value == 'url';

你也可以这样做:

var str1 = 'a';
var str2 = 'b';

var key = 'str1';
var value = window[key]; // value == 'a';

答案 2 :(得分:0)

var map = {  "string1": { path: "url1", var1:5},
             "string2": { path: "url2", var1:3} };
...
var url = map[yourstring].path;