Statiskā metode JavaScript Array.from () izveido sekla kopētu masīva gadījumu no masīvam līdzīga vai iterējama objekta.
Metodes sintakse from()
ir šāda:
Array.from(arraylike, mapFunc, thisArg)
from()
Metodi, kas ir statiska metode, sauc izmantojot Array
klases nosaukumu.
no () parametriem
from()
Metode ņem in:
- masīva veida - masīvam līdzīgs vai iterējams objekts, kas jāpārvērš masīvā.
- mapFunc (pēc izvēles) - kartes funkcija, kas tiek izsaukta uz katru elementu.
- thisArg (pēc izvēles) - vērtība, kas jāizmanto, izpildot mapFunc.
Piezīme : Array.from(obj, mapFunc, thisArg)
ir ekvivalents Array.from(obj).map(mapFunc, thisArg)
.
Atgriezties vērtība no no ()
- Atgriež jaunu
Array
gadījumu.
Piezīme : Šī metode var izveidot masīvu no:
Array
līdzīgi objekti - objekti, kuriem ir garuma īpašība un kuriem ir indeksēti elementi, piemēram, virknes.- Atkārtoti objekti, piemēram, Map vai Set.
1. piemērs: Izmantojot no () metodi
// Array from String let arr1 = Array.from("abc"); console.log(arr1); // ( 'a', 'b', 'c' ) // Array from Map let mapper = new Map(( ("1", "a"), ("2", "b"), )); let arr2 = Array.from(mapper); console.log(arr2); // ( ( '1', 'a' ), ( '2', 'b' ) ) let arr3 = Array.from(mapper.keys()); console.log(arr3); // ( '1', '2' ) // Array from Set let set = new Set(("JavaScript", "Python", "Go")); let arr4 = Array.from(set); console.log(arr4); // ( 'JavaScript', 'Python', 'Go' )
Rezultāts
('a', 'b', 'c') (('1', 'a'), ('2', 'b')) ('1', '2') ('JavaScript', 'Python "," Iet ")
Tas darbojas arī citiem atkārtojamiem objektiem.
2. piemērs: Izmantojot no () metodi ar mapFunc
function createArr(arraylike, mapFunc) ( return Array.from(arraylike, mapFunc); ) // using arrow function for mapFunc let arr1 = createArr("123456", (x) => 2 * x); console.log(arr1); // ( 2, 4, 6, 8, 10, 12 )
Rezultāts
(2, 4, 6, 8, 10, 12)
Ieteicamā literatūra: JavaScript masīva karte ()