Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.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 - Fatal编程技术网

Javascript 组织数组项

Javascript 组织数组项,javascript,Javascript,我有以下JavaScript数组: var allItems = ['BBL_NO1', 'BBL_NO2', 'BBL_N03', 'BBL_NO4', 'AAL_NO1', 'AAL_NO2', 'MML_NO1', 'MML_NO2']; 现在我想用这种格式对数组进行排序,将值放在下拉列表中: var sorted = { 'BBL': ['BBL_NO1', 'BBL_NO2', 'BBL_N03', 'BBL_NO4'], 'AAL': ['AAL_

我有以下JavaScript数组:

var allItems = ['BBL_NO1', 'BBL_NO2', 'BBL_N03',  'BBL_NO4', 'AAL_NO1', 'AAL_NO2', 'MML_NO1', 'MML_NO2'];
现在我想用这种格式对数组进行排序,将值放在下拉列表中:

var sorted = { 'BBL': ['BBL_NO1', 'BBL_NO2', 'BBL_N03',  'BBL_NO4'],
               'AAL': ['AAL_NO1', 'AAL_NO2'],
               'MML': ['MML_NO1', 'MML_NO2']};
有人知道我怎么做吗?

你可以用函数来做

示例:

var allItems=['BBL_NO1'、'BBL_NO2'、'BBL_no03'、'BBL_NO4'、'AAL_NO1'、'AAL_NO2'、'MML_NO1'、'MML_NO2';
var排序=所有项目减少(功能(附件,项目){
var mainPart=项目拆分(“”“)[0];
如果(!acc.hasOwnProperty(mainPart)){
acc[主要部件]=[];
}
acc【主要部件】。推送(项目);
返回acc;
}, {});

控制台日志(已排序)你应该避免问是/否问题,否则Scott会出现:D最好问开放式的问题,“我该怎么做?真的,你应该避免问是/否的问题,否则人们不会知道你在问什么。当然,一切皆有可能,但你试过什么?堆栈溢出不是一种代码编写服务。作为一个人,您将如何解决这个问题?如果你在纸上有这个列表,你会如何进行转换?如果你能做到这一点,计算机也能做到这一点,并且使用相同的算法。好的@ScottMarcus我现在已经改变了我的问题。@NinaScholz为什么?@NinaScholz你问过如何获取特定格式的值,以便在下拉列表中使用。您没有询问如何将值放在下拉列表中。
现在我想按此格式对数组进行排序,将值放在下拉列表中:
OP希望数组采用该格式,以便他可以将值放在下拉列表中。这不是问题的一部分,也许你为分割的部分花费了一个变量。@Mohamedabas别介意我之前的评论,多亏了你,我才使它起作用!你让我开心,非常感谢!你的解决方案很好。