summaryrefslogtreecommitdiff
path: root/node_modules/locutus/php/array/array_intersect.js.map
blob: b65ecc1e69fe00d92841a6f5c5927773f1aa6e37 (plain) (blame)
1
{"version":3,"sources":["../../../src/php/array/array_intersect.js"],"names":["module","exports","array_intersect","arr1","retArr","argl","arguments","length","arglm1","k1","arr","i","k","arr1keys","arrs"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,eAAT,CAA0BC,IAA1B,EAAgC;AAAE;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAIC,SAAS,EAAb;AACA,MAAIC,OAAOC,UAAUC,MAArB;AACA,MAAIC,SAASH,OAAO,CAApB;AACA,MAAII,KAAK,EAAT;AACA,MAAIC,MAAM,EAAV;AACA,MAAIC,IAAI,CAAR;AACA,MAAIC,IAAI,EAAR;;AAEAC,YAAU,KAAKJ,EAAL,IAAWN,IAAX,EAAiB;AAAE;AAC3BW,UAAM,KAAKH,IAAI,CAAT,EAAYA,IAAIN,IAAhB,EAAsBM,GAAtB,EAA2B;AAAE;AACjCD,YAAMJ,UAAUK,CAAV,CAAN;AACA,WAAKC,CAAL,IAAUF,GAAV,EAAe;AACb,YAAIA,IAAIE,CAAJ,MAAWT,KAAKM,EAAL,CAAf,EAAyB;AACvB,cAAIE,MAAMH,MAAV,EAAkB;AAChBJ,mBAAOK,EAAP,IAAaN,KAAKM,EAAL,CAAb;AACD;AACD;AACA;AACA,mBAASK,IAAT,CANuB,CAMV;AACd;AACF;AACD;AACA,eAASD,QAAT,CAb+B,CAad;AAClB;AACF;;AAED,SAAOT,MAAP;AACD,CAtCD","file":"array_intersect.js","sourcesContent":["module.exports = function array_intersect (arr1) { // eslint-disable-line camelcase\n  //  discuss at: http://locutus.io/php/array_intersect/\n  // original by: Brett Zamir (http://brett-zamir.me)\n  //      note 1: These only output associative arrays (would need to be\n  //      note 1: all numeric and counting from zero to be numeric)\n  //   example 1: var $array1 = {'a' : 'green', 0:'red', 1: 'blue'}\n  //   example 1: var $array2 = {'b' : 'green', 0:'yellow', 1:'red'}\n  //   example 1: var $array3 = ['green', 'red']\n  //   example 1: var $result = array_intersect($array1, $array2, $array3)\n  //   returns 1: {0: 'red', a: 'green'}\n\n  var retArr = {}\n  var argl = arguments.length\n  var arglm1 = argl - 1\n  var k1 = ''\n  var arr = {}\n  var i = 0\n  var k = ''\n\n  arr1keys: for (k1 in arr1) { // eslint-disable-line no-labels\n    arrs: for (i = 1; i < argl; i++) { // eslint-disable-line no-labels\n      arr = arguments[i]\n      for (k in arr) {\n        if (arr[k] === arr1[k1]) {\n          if (i === arglm1) {\n            retArr[k1] = arr1[k1]\n          }\n          // If the innermost loop always leads at least once to an equal value,\n          // continue the loop until done\n          continue arrs// eslint-disable-line no-labels\n        }\n      }\n      // If it reaches here, it wasn't found in at least one array, so try next value\n      continue arr1keys// eslint-disable-line no-labels\n    }\n  }\n\n  return retArr\n}\n"]}