Javascript参数为数组?

时间:2010-10-03 21:17:48

标签: javascript arrays function arguments

所以我有一个关于此事件的按钮:

onmousedown="hideElements('\x22cartview\x22,\x22other\x22')"

然后这个函数hideElements:

function hideElements(what)
  {
  var whichElements=[what];
  alert(whichElements[0]);
  }

我希望它提醒“cartview”,但它提醒

  

“cartview”, “其他”

我知道arguments对象,但在这种情况下我不知道如何使用它来访问逗号分隔的单个字符串。可能有一个简单的解决方案,但我对此有点新意。谢谢!

2 个答案:

答案 0 :(得分:5)

onmousedown="hideElements([ 'cartview', 'other' ])"

然后:

function hideElements(what) {
    alert(what[0]);
}

答案 1 :(得分:3)

看起来真正的问题是你传递的是字符串,而不是数组。所以你会做类似的事情:

function hideElements(/* String */ what) {
    alert(what.split(',')[0]);
}

或使用数组:

function hideElements(/* Array<String> */ what) {
    alert(what[0]);
}

或直接将多个字符串传递给函数:

function hideElements(/* String */ what) {
    alert(arguments[0]);
}