我有一个字符串,我想分解它并传递它的一半,就像函数中的参数一样。但该函数将参数视为一整 block 。示例:aaa,bbb,ccc
(3 个参数),但它理解一个参数'aaa,bbb,ccc'
。我该怎么做?
var text = "aaa,bbb,ccc@dd,eee,fff"
var itens_menu = text.split('@');
var item_menu1 = itens_menu[0];
var item_menu2 = itens_menu[1];
item = Menu(itens_menu[0]);
item2 = Menu(itens_menu[1]);
function Menu()
{
var ItemText = arguments[0];
}
最佳答案
.split()
再次计算每个值。但您还需要将正确的变量传递给 Menu。您传入的是 itens_menu[0]
,但您应该传入 item_menu1
。
选项 1:使用参数
var text = "aaa,bbb,ccc@dd,eee,fff"
var itens_menu = text.split('@');
var item_menu1 = itens_menu[0].split(',');
var item_menu2 = itens_menu[1].split(',');
var item = Menu(item_menu1);
var item2 = Menu(item_menu2);
function Menu() {
var ItemText = arguments[0]; // this is the array
console.log(ItemText);
// if you are wanting to first value of the array, you would do
// console.log(ItemText[0]) which would be either aaa, or dd
}
选项 2:使用 apply
如果您希望将所有值作为单独的参数传递给 Menu
,则需要 apply
数组到菜单
。然后,当您引用参数对象时,您将获得字符串值:
var text = "aaa,bbb,ccc@dd,eee,fff"
var itens_menu = text.split('@');
var item_menu1 = itens_menu[0].split(',');
var item_menu2 = itens_menu[1].split(',');
var item = Menu.apply(null, item_menu1);
var item2 = Menu.apply(null, item_menu2);
function Menu() {
var ItemText = arguments[0];
console.log(ItemText);
}
关于javascript - 拆分为数组并作为参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38513341/