Jquery,根据其他变量选择一个特定的2d数组
Jquery, Picking a specific 2d array to use depending on other variable
在我的项目中,我使用2d数组在特定情况下附加特定的div。我试图使代码更干净和可用几次在1个网站上,我决定创建一个变量,将显示哪个数组应该根据html <div>
id使用。
例如
if div id="ruby"
I want to
console.log(ruby[1][1]),
if div="rails"
I want to console.log(rails[1][1]).
我创建了一个JS小提琴,应该会告诉你我有什么问题:
http://jsfiddle.net/6UgeB/var ruby = [[1,2,3],
[4,5,6]];
var rails = [[7,8,9],
[10,11,12]];
$("div").each(function () {
currentDiv = $(this);
currentDivID = currentDiv.attr("id");
console.log(currentDivID);
/* HAVE TO SOMEHOW COMPARE THE currentDivID TO OTHER VARIABLE NAMES AND IF IT FITS SWITCH THE currentDivID WITH THE EARLIER SET VARIABLE */
console.log(currentDivID[1][1]);
/* THE ABOVE SHOULD RETURN IF currentDivID = ruby 5 OR 11 if currentDivID = rails */
});
可以创建一个查找对象,将字符串映射到数组:
var map = { ruby : ruby, rails : rails };
现在您可以使用该对象来获取数组:
console.log(map[currentDivID][1][1]);
如果你把数组放到一个对象中:
var tables = {
ruby: [[1,2,3],
[4,5,6]],
rails: [[7,8,9],
[10,11,12]]
};
你可以使用:
tables[currentDivID][1][1]
您也可以使用Javascript eval方法
eval(currentDivID)[1][1];
见:http://jsfiddle.net/tleish/6UgeB/1/
相关文章:
- Javascript(Angular)从一个对象数组到第二个数组查找值
- 根据id将json数组组合为一个json数组
- JavaScript数组包含一个值
- 对一个对象使用reduce可以返回一个没有't在数组中包含目标字母
- jQuery$.inArray()总是返回-1和一个对象数组
- 在数组中的一个元素上设置多个值
- javascript处理一个对象数组以获得一个新的对象数组
- 作为一个二维数组,从ajax接收
- 你能用来自数组的属性名称生成一个对象吗
- 多维关联数组的最后一个索引
- 如何创建一个方法来验证数组的范围
- 循环以检查数组中的最后一个图像
- 在Javascript中将一个值和字符串数组转换为if语句
- 算法:从数组(javascript/angular)中按当前日期获取上一个和下一个事件
- 如何将一个对象添加到每个对象数组中
- 如何创建一个谷歌地图地理坐标数组
- 如何从另一个带下划线的数组中筛选带元素的数组
- 如何在PHP数组中加载下一个youtube
- 查找对象数组是否包含其中一个标记的最快方法
- 如何使用Javascript和Ajax传递一个HTML选择标签到PHP $_POST与一个(数组)var当名称属性是一个