Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 拆分为数组并作为参数传递_Javascript_Arrays_Split_Parameter Passing_Apply - Fatal编程技术网

Javascript 拆分为数组并作为参数传递

Javascript 拆分为数组并作为参数传递,javascript,arrays,split,parameter-passing,apply,Javascript,Arrays,Split,Parameter Passing,Apply,我有一个字符串,我想打断它并传递它的一半,就像函数中的参数一样。但该函数将参数视为一个整体。例如: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_me

我有一个字符串,我想打断它并传递它的一半,就像函数中的参数一样。但该函数将参数视为一个整体。例如:
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()
再次输入每个值。但您还需要将正确的变量传递到菜单。您正在传入
itens\u菜单[0]
,但您应该传入
项\u菜单1

选项1:使用参数
var text=“aaa,bbb,ccc@dd,eee,fff“
变量itens_menu=text.split('@');
var item_menu1=itens_菜单[0]。拆分(',');
var item_menu2=itens_菜单[1]。拆分(',');
变量项=菜单(项\菜单1);
var item2=菜单(item_menu2);
功能菜单(){
var ItemText=参数[0];//这是数组
console.log(ItemText);
//如果您想获取数组的第一个值,可以这样做
//log(ItemText[0]),可以是aaa,也可以是dd
}
.split()
再次读取每个值。但您还需要将正确的变量传递到菜单。您正在传入
itens\u菜单[0]
,但您应该传入
项\u菜单1

选项1:使用参数
var text=“aaa,bbb,ccc@dd,eee,fff“
变量itens_menu=text.split('@');
var item_menu1=itens_菜单[0]。拆分(',');
var item_menu2=itens_菜单[1]。拆分(',');
变量项=菜单(项\菜单1);
var item2=菜单(item_menu2);
功能菜单(){
var ItemText=参数[0];//这是数组
console.log(ItemText);
//如果您想获取数组的第一个值,可以这样做
//log(ItemText[0]),可以是aaa,也可以是dd

}
您应该再次应用
.split
,还可以将数组项作为单个参数传递:

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() {
  console.log(arguments); // you'll have all the items as a single argument

  // so
  console.log(arguments[0]); 
  //this will return aaa for "item_menu1" and dd for "item_menu2"
}

您应该再次应用
.split
,还可以将数组项作为单个参数传递:

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() {
  console.log(arguments); // you'll have all the items as a single argument

  // so
  console.log(arguments[0]); 
  //this will return aaa for "item_menu1" and dd for "item_menu2"
}

这与OP的代码有何不同?看起来您刚刚添加了一个
警报
。请解释你做了什么以及为什么。虽然这个代码片段可以解决这个问题,但它确实有助于提高你文章的质量。请记住,您将在将来回答读者的问题,这些人可能不知道您的代码建议的原因。还请尽量不要用解释性注释挤满您的代码,因为这会降低代码和解释的可读性!这与OP的代码有何不同?看起来您刚刚添加了一个
警报
。请解释你做了什么以及为什么。虽然这个代码片段可以解决这个问题,但它确实有助于提高你文章的质量。请记住,您将在将来回答读者的问题,这些人可能不知道您的代码建议的原因。还请尽量不要用解释性注释挤满您的代码,因为这会降低代码和解释的可读性!
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() {
  console.log(arguments); // you'll have all the items as a single argument

  // so
  console.log(arguments[0]); 
  //this will return aaa for "item_menu1" and dd for "item_menu2"
}