Sha256: 219030faecb05ec78a3b0d71d360060a5efc2a10a0970df1203925e0ba158726

Contents?: true

Size: 585 Bytes

Versions: 69

Compression:

Stored size: 585 Bytes

Contents

define(['./unique', './filter', './contains'], function (unique, filter, contains) {


    /**
     * Exclusive OR. Returns items that are present in a single array.
     * - like ptyhon's `symmetric_difference`
     */
    function xor(arr1, arr2) {
        arr1 = unique(arr1);
        arr2 = unique(arr2);

        var a1 = filter(arr1, function(item){
                return !contains(arr2, item);
            }),
            a2 = filter(arr2, function(item){
                return !contains(arr1, item);
            });

        return a1.concat(a2);
    }

    return xor;

});

Version data entries

69 entries across 69 versions & 2 rubygems

Version Path
trusty-festivity-extension-2.6.3 node_modules/bower/node_modules/mout/src/array/xor.js
trusty-festivity-extension-2.6.2 node_modules/bower/node_modules/mout/src/array/xor.js
trusty-festivity-extension-2.6.1 node_modules/bower/node_modules/mout/src/array/xor.js
trusty-festivity-extension-2.6 node_modules/bower/node_modules/mout/src/array/xor.js
trusty-festivity-extension-2.5.19 node_modules/bower/node_modules/mout/src/array/xor.js
trusty-festivity-extension-2.5.18 node_modules/bower/node_modules/mout/src/array/xor.js
trusty-festivity-extension-2.5.17 node_modules/bower/node_modules/mout/src/array/xor.js
trusty-festivity-extension-2.5.16 node_modules/bower/node_modules/mout/src/array/xor.js
trusty-festivity-extension-2.5.15 node_modules/bower/node_modules/mout/src/array/xor.js
trusty-festivity-extension-2.5.14 node_modules/bower/node_modules/mout/src/array/xor.js
trusty-festivity-extension-2.5.13 node_modules/bower/node_modules/mout/src/array/xor.js
trusty-festivity-extension-2.5.12 node_modules/bower/node_modules/mout/src/array/xor.js
trusty-festivity-extension-2.5.11 node_modules/bower/node_modules/mout/src/array/xor.js
trusty-festivity-extension-2.5.10 node_modules/bower/node_modules/mout/src/array/xor.js
trusty-festivity-extension-2.5.9 node_modules/bower/node_modules/mout/src/array/xor.js
trusty-festivity-extension-2.5.8 node_modules/bower/node_modules/mout/src/array/xor.js
trusty-festivity-extension-2.5.7 node_modules/bower/node_modules/mout/src/array/xor.js
trusty-festivity-extension-2.5.6 node_modules/bower/node_modules/mout/src/array/xor.js
trusty-festivity-extension-2.5.5 node_modules/bower/node_modules/mout/src/array/xor.js
trusty-festivity-extension-2.5.4 node_modules/bower/node_modules/mout/src/array/xor.js