I dette innlegget vil Vi se hvordan du finner krysset mellom to arrays i JavaScript. For ord, liste ut de felles verdiene som er tilstede i hver av arrays.
for eksempel er skjæringspunktet mellom matriser og
.
Matrise.prototype.filter ()
tanken er å kontrollere tilstedeværelsen av hvert element i den første gruppen i den andre gruppen. This can be easily done using indexOf()
method with the filter()
method in following manner:
1
2
3
4
5
6
7
8
9
|
var first = ;
var second = ;
var common = first.filter(x => second.indexOf(x) !== -1)
console.Logg(«de vanlige elementene er:» + felles);
/*
Utgang: de vanlige elementene er: 2,3
*/
|
for å sjekke om det finnes visse elementer i en matrise, kan vi bruk Også Den Nyesteincludes()
– metoden som returnerer en boolsk Verdi. Dette er illustrert nedenfor:
1
2
3
4
5
6
7
8
9
|
var first = ;
var second = ;
var common = first.filter(x => second.includes(x))
console.log(«The common elements are: » + common);
/*
Output: The common elements are: 2,3
*/
|
Merk denne løsningen resulterer ikke i unike verdier i utgangen.
Ved Hjelp Av Set
en annen løsning er å konvertere matrisen TIL EN ES6 Set
og ring dens has()
metode for å se etter tilstedeværelse av elementer i den andre matrisen.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
for å unngå å skrive ut duplikater i utgangen, kan du fjerne dupliserte elementer fra den første Tabellen som vist nedenfor:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
Understrek/Lodash
i tilfelle du ikke trenger ikke Ønsker å Bruke satt som en mellomliggende datastruktur for å finne felles verdier, kan koden forenkles ved hjelp av understreking eller lodash bibliotek. The following code example prints the unique values that are present in given arrays using intersection() method.
1
2
3
4
5
6
7
8
9
10
11
|
var _ = require(‘lodash’); // or underscore
var first = ;
var second = ;
var common = _.intersection(first, second);
konsoll.logg («de vanlige elementene er:» + felles);
/*
Utgang: de vanlige elementene er: 2,3
*/
|
jQuery
med jQuery, du kan bruke koden nedenfor:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
const { jsdom } = krever(«jsdom»);
const { window } = new jsdom ();
var $ = require(«jquery»)(vindu);
var første=;
var andre=;
var andre = $(andre).ikke (første); / / – =
var vanlig = $(andre).ikke (secondNotFirst); // – =
konsoll.logg («de vanlige elementene er:»);
for (var i = 0; i< felles.lengde; i++) {
konsoll.logg (vanlig);
}
/*
Utgang: de vanlige elementene er:
2
3
*/
|
koden kan forenkles ved hjelp av jquery filter()
metode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|