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

Javascript 将数组中的数据推送到方括号内

Javascript 将数组中的数据推送到方括号内,javascript,arrays,Javascript,Arrays,步骤1:执行上述代码后,变量a将如下所示 a=['NYC':5,'London':2,'Boston':3,'Sfo':3,'Edison':2,'Manchester':1] 步骤2:将数组a推到数据和内,如下所示 var a = ['NYC', 'Boston', 'London', 'NYC', 'Boston', 'NYC', 'Sfo', 'Boston', 'Sfo', 'London', 'Edison', 'Sfo', 'NYC', 'charlotte', 'Edison',

步骤1:执行上述代码后,变量a将如下所示 a=['NYC':5,'London':2,'Boston':3,'Sfo':3,'Edison':2,'Manchester':1]

步骤2:将数组a推到数据和内,如下所示

var a = ['NYC', 'Boston', 'London', 'NYC', 'Boston', 'NYC', 'Sfo', 'Boston', 'Sfo', 'London', 'Edison', 'Sfo', 'NYC', 'charlotte', 'Edison', 'NYC', 'Manchester'];
a = a.reduce(function (acc, curr) {
    if (typeof acc[curr] == 'undefined') {
        acc[curr] = 1;
    } else {
        acc[curr] += 1;
    }
    return acc;
}, {});
如何在Javascript中将变量“a”推送到上面所示的“Datasum”中?非常感谢您的帮助


注意:-如果您只想在上述datasum变量中推送变量a,请使用datasum.push()

您的问题不太清楚,但我推测您想要生成
datasum
,如
a
所示。仅仅按一下
a
是不行的。不过,您可以这样做:

var datasum = [
    ['NYC', 5],
    ['London', 2],
    ['Boston', 3],
    ['Sfo', 3],
    ['Edison', 2]
    ['Manchester', 1]
];

请注意,这并不保证
datasum

元素的特定顺序,您的意思是,
datasum.push(a)?因为这是一个函数。您想要的是将一个数组放入另一个数组中,或者在一个预先存在的数组中增加计数器。对吗?+1可能这就是OP想要的,这是有意义的。+1,如果你提到我们之前的回答,我的意思是,
如果你想推动整个a…
@min2bro-我想我的代码就是这样的。每个对
push
的调用都有一个两元素数组作为其参数。最后,
datasum
将是一个由两个元素数组组成的数组。@min2bro-您的小提琴代码与我建议的完全不同。每次通过
for
循环为
datasum
分配一个新数组。相反,您应该每次只推送一个数组。@Sheikheera也补充了您的建议。
var datasum = [];
for (var i in a) { datasum.push([i, a[i]]);