【问题标题】:How to pass a variable in array index如何在数组索引中传递变量
【发布时间】:2011-06-16 05:03:20
【问题描述】:

我重复标题,因为一切都在那里:如何在数组索引中传递变量

var xyz = 0;
var somearray = ['a','b','c'];
var content = somearray[xyz]; - **that dont work !**

这样做的正确方法应该是什么?

【问题讨论】:

  • 实际上上述方法确实有效(至少在我在 firebug 中的测试中,我得到了 content = 'a')。以上对您不起作用怎么办?
  • 工作在这里demo

标签: javascript arrays indexing


【解决方案1】:

这里只是在黑暗中刺伤,但也许 OP 正在使用 inArray 并且可能会(间接地)询问如何让智能感知在他们使用的任何工具中工作。

如果是这样的话,我相信这里有人可以提供更优雅的解决方案,但类似于以下内容应该可以工作:

var somearray = ['a','b','c'];
var index = $.inArray('a', somearray);
if (index > -1) {
    index = isNaN(index) ? 0 : index;
    var content = somearray[index];
}

【讨论】:

  • 一个有用的答案,但从这个问题中推断出的东西比我想象的要多得多,所以看起来你正在为另一个问题提供一个非常有用的答案。
【解决方案2】:

这实际上是正确的。执行代码后,减去注释,内容包含“a”。

<html>
<head>
   <title>Test</title>
</head> 
<body>
<script type="text/javascript"> 
    var xyz = 0;
    var somearray = ['a','b','c'];
    var content = somearray[xyz];
    alert(content);
</script>
</body>
</html>

你应该得到一个漂亮的小警告框,上面写着“a”。

【讨论】:

  • 您是否将实际代码剪切并粘贴到您的问题中?还是重新输入?您的运行源代码中可能有拼写错误,或者字符大小写错误。
猜你喜欢
  • 2013-01-27
  • 2013-02-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-06-09
  • 1970-01-01
  • 2018-03-13
  • 2012-05-20
相关资源
最近更新 更多