组合2个数组,如果它们不重复则填充0

时间:2016-05-09 12:28:09

标签: javascript arrays

我有两个带有日期时间的数组。我想在图表的x轴上显示值。

我需要一个将数组合二为一的函数,然后添加一个' 0'哪里都没有重复。

array 1 = [2016-01-20,2016-01-21,2016-01-24]
array 2 = [2016-01-21]

final array = [0, 2016-01-21, 0]

有没有快速的方法呢?

非常感谢

2 个答案:

答案 0 :(得分:1)

只需遍历第一个数组并检查值是否在第二个数组中。

foreach ($array1 as &$date) {
    if (!in_array($date, $array2)) {
        $date = 0;
    }
}

答案 1 :(得分:1)

您可以使用map()indexOf()

执行此操作



var array1 = ['2016-01-20', '2016-01-21', '2016-01-24']
var array2 = ['2016-01-21']

var final = array1.map(function(e) {
  return (array2.indexOf(e) == -1) ? e = 0 : e;
});

console.log(final)