Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/20.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_Google Apps Script - Fatal编程技术网

数组JavaScript中的重复、不同和唯一值

数组JavaScript中的重复、不同和唯一值,javascript,arrays,google-apps-script,Javascript,Arrays,Google Apps Script,我一直在我的谷歌应用程序脚本中使用它,特别是独特的功能 到目前为止,这已经满足了我的要求,如果我有两个阵列,如: [1,2,3]和[2,3,4],我一直在使用array1.concat(array2)和使用唯一函数,该函数将返回[1,2,3,4] 在我的示例中,如何检索唯一值将是[1,4]?尝试以下函数,它将返回不同、唯一和重复元素的对象 var a = [1,2,3], b = [2,3,4]; var c = a.concat(b); function arrays( array ) {

我一直在我的谷歌应用程序脚本中使用它,特别是独特的功能

到目前为止,这已经满足了我的要求,如果我有两个阵列,如:

[1,2,3]
[2,3,4]
,我一直在使用
array1.concat(array2)
和使用唯一函数,该函数将返回[1,2,3,4]


在我的示例中,如何检索唯一值将是
[1,4]

尝试以下函数,它将返回不同、唯一和重复元素的对象

var a = [1,2,3], b = [2,3,4];
var c = a.concat(b);

function arrays( array ) {
    var distinct = [], unique = [], repeated = [], repeat = [];

    array.forEach(function(v,i,arr) {
        arr.splice(i,1);
        ( distinct.indexOf(v) === -1 ) ? distinct.push(v) : repeat.push(v);
        ( arr.indexOf(v) === -1 ) ? unique.push(v) : void 0;
        arr.splice(i,0,v);
    });

    repeat.forEach(function(v,i,arr) {
        ( repeated.indexOf(v) === -1 ) ? repeated.push(v) : void 0;
    });

    repeat = [];

    return {
        "distinct" : distinct,
        "unique"   : unique,
        "repeated" : repeated
    };
}

console.log(arrays(c));


在您的情况下,您将获得所需的结果,如
console.log(arrays(c).unique)
[1,4]

可能与Now重复这是一个可爱的函数:-)谢谢