Niz je homogena zbirka podobnih tipov elementov, ki imajo sosednjo pomnilniško lokacijo.
Niz je podatkovni tip, ki ga določi uporabnik.
Matrika je tip podatkovne strukture, kjer hranimo elemente podobnega podatkovnega tipa. V matriko lahko shranimo samo fiksen nabor elementov. Lahko ga uporabimo tudi kot predmet.
Matrika je shramba na podlagi indeksa, kjer je prvi element shranjen pri indeksu 0. Spodnja struktura pomaga razumeti strukturo matrike.
Značilnosti matrike
- Matrika hrani elemente, ki imajo isti podatkovni tip.
- Elementi niza, shranjeni na sosednjih pomnilniških lokacijah.
- Shranjevanje elementov dvodimenzionalne matrike je razvrščeno po vrsti na sosednji pomnilniški lokaciji.
- Ime matrike predstavlja naslov začetnega elementa.
- Velikost matrike je treba inicializirati ob času deklaracije.
- Velikost matrike mora biti konstanten izraz in ne spremenljivka.
- Elemente matrike lahko pridobimo tako, da določimo ustrezno vrednost indeksa elementa.
Prednost
Optimizacija kode: Matrika pomaga narediti kodo optimizirano, kar poveča hitrost in zmogljivost programa. Omogoča nam učinkovitejše pridobivanje ali razvrščanje matričnih podatkov.
Naključni dostop: Omogoča dostop do katerega koli podatka v matriki v konstantnem času (neodvisno od njenega položaja in velikosti). Tako lahko neposredno pridobimo vse podatke matrike, ki se nahajajo na kateri koli poziciji indeksa.
Slabost
Omejitev velikosti: Matrika nam omogoča shranjevanje samo določenega števila elementov. Ko je matrika deklarirana, njene velikosti ne moremo spremeniti. Torej, če želimo vstaviti več elementov, kot je deklarirano, to ni mogoče.
Deklaracija matrike
Tako kot JavaScript tudi TypeScript podpira polja. Matriko lahko deklarirate na dva načina:
1. Uporaba oglatih oklepajev.
let array_name[:datatype] = [val1,val2,valn..]
primer:
let fruits: string[] = ['Apple', 'Orange', 'Banana'];
2. Uporaba generičnega tipa polja.
shrani youtube video vlc
let array_name: Array = [val1,val2,valn..]
primer:
let fruits: Array = ['Apple', 'Orange', 'Banana'];
Vrste matrike v TypeScriptu
Obstajata dve vrsti matrike:
- Enodimenzionalni niz
- Večdimenzionalni niz
Enodimenzionalni niz
Enodimenzionalno polje je vrsta linearnega polja, ki vsebuje samo eno vrstico za shranjevanje podatkov. Ima en niz oglatih oklepajev ('[]'). Do njegovih elementov lahko dostopamo z uporabo indeksa vrstice ali stolpca.
Sintaksa
let array_name[:datatype];
Inicializacija
array_name = [val1,val2,valn..]
Primer
let arr:number[]; arr = [1, 2, 3, 4] console.log('Array[0]: ' +arr[0]); console.log('Array[1]: ' +arr[1]);
Izhod:
Array[0]: 1 Array[1]: 2
Večdimenzionalni niz
Večdimenzionalna matrika je matrika, ki vsebuje eno ali več matrik. V večdimenzionalni matriki so podatki shranjeni v indeksu, ki temelji na vrstici in stolpcu (znan tudi kot matrična oblika). Dvodimenzionalni niz (2-D array) je najenostavnejša oblika večdimenzionalnega niza.
Sintaksa
let arr_name:datatype[][] = [ [a1,a2,a3], [b1,b2,b3] ];
Inicializacija
let arr_name:datatype[initial_array_index][referenced_array_index] = [ [val1,val2,val 3], [v1,v2,v3]];
Primer
var mArray:number[][] = [[1,2,3],[5,6,7]] ; console.log(mArray[0][0]); console.log(mArray[0][1]); console.log(mArray[0][2]); console.log(); console.log(mArray[1][0]); console.log(mArray[1][1]); console.log(mArray[1][2]);
Izhod:
1 2 3 5 6 7
Matrični predmet
Matrični objekti nam omogočajo shranjevanje več vrednosti v eno spremenljivko. Matriko lahko ustvarimo z uporabo predmeta Array. Konstruktor matrike se uporablja za posredovanje naslednjih argumentov za ustvarjanje matrike.
- Številska vrednost, ki predstavlja velikost matrike oz
- Seznam vrednosti, ločenih z vejicami.
Sintaksa
let arr_name:datatype[] = new Array(values);
Primer
//array by using the Array object. let arr:string[] = new Array('JavaTpoint','2200','Java','Abhishek'); for(var i = 0;i <arr.length;i++) { console.log(arr[i]); } < pre> <p> <strong>Output:</strong> </p> <pre> JavaTpoint 2200 Java Abhishek </pre> <h3>Array Traversal by using a for...in loop</h3> <p> <strong>Example</strong> </p> <pre> let i:any; let arr:string[] = ['JavaTpoint', '2300', 'Java', 'Abhishek']; for(i in arr) { console.log(arr[i]) } </pre> <p> <strong>Output:</strong> </p> <pre> JavaTpoint 2300 Java Abhishek </pre> <h3>Passing Arrays to Functions</h3> <p>We can pass arrays to functions by specifying the array name without an index.</p> <p> <strong>Example</strong> </p> <pre> let arr:string[] = new Array('JavaTpoint', '2300', 'Java', 'Abhishek'); //Passing arrays in function function display(arr_values:string[]) { for(let i = 0;i <arr_values.length;i++) { console.log(arr[i]); } calling arrays in function display(arr); < pre> <p> <strong>Output:</strong> </p> <pre> JavaTpoint 2300 Java Abhishek </pre> <hr> <h2>TypeScript Spread operator</h2> <p>The spread operator is used to initialize arrays and objects from another array or object. We can also use it for object de-structuring. It is a part of the ES 6 version.</p> <p> <strong>Example</strong> </p> <pre> let arr1 = [ 1, 2, 3]; let arr2 = [ 4, 5, 6]; //Create new array from existing array let copyArray = [...arr1]; console.log('CopiedArray: ' +copyArray); //Create new array from existing array with more elements let newArray = [...arr1, 7, 8]; console.log('NewArray: ' +newArray); //Create array by merging two arrays let mergedArray = [...arr1, ...arr2]; console.log('MergedArray: ' +mergedArray); </pre> <p> <strong>Output:</strong> </p> <pre> CopiedArray: 1,2,3 NewArray: 1,2,3,7,8 MergedArray: 1,2,3,4,5,6 </pre> <hr> <h2>Array Methods</h2> <p>The list of array methods with their description is given below.</p> <table class="table"> <tr> <th>SN</th> <th>Method</th> <th>Description</th> </tr> <tr> <td>1.</td> <td>concat()</td> <td>It is used to joins two arrays and returns the combined result.</td> </tr> <tr> <td>2.</td> <td>copyWithin()</td> <td>It copies a sequence of an element within the array.</td> </tr> <tr> <td>3.</td> <td>every()</td> <td>It returns true if every element in the array satisfies the provided testing function.</td> </tr> <tr> <td>4.</td> <td>fill()</td> <td>It fills an array with a static value from the specified start to end index.</td> </tr> <tr> <td>5.</td> <td>indexOf()</td> <td>It returns the index of the matching element in the array, otherwise -1.</td> </tr> <tr> <td>6.</td> <td>includes()</td> <td>It is used to check whether the array contains a certain element or not.</td> </tr> <tr> <td>7.</td> <td>Join()</td> <td>It is used to joins all elements of an array into a string.</td> </tr> <tr> <td>8.</td> <td>lastIndexOf()</td> <td>It returns the last index of an element in the array.</td> </tr> <tr> <td>9.</td> <td>Pop()</td> <td>It is used to removes the last elements of the array.</td> </tr> <tr> <td>10.</td> <td>Push()</td> <td>It is used to add new elements to the array.</td> </tr> <tr> <td>11.</td> <td>reverse()</td> <td>It is used to reverse the order of an element in the array.</td> </tr> <tr> <td>12.</td> <td>Shift()</td> <td>It is used to removes and returns the first element of an array.</td> </tr> <tr> <td>13.</td> <td>slice()</td> <td>It returns the section fo an array in the new array.</td> </tr> <tr> <td>14.</td> <td>sort()</td> <td>It is used to sort the elements of an array.</td> </tr> <tr> <td>15.</td> <td>splice()</td> <td>It is used to add or remove the elements from an array.</td> </tr> <tr> <td>16.</td> <td>toString()</td> <td>It returns the string representation of an array.</td> </tr> <tr> <td>17.</td> <td>unshift()</td> <td>It is used to add one or more elements to the beginning of an array.</td> </tr> </table></arr_values.length;i++)></pre></arr.length;i++)>
Prehod matrike z uporabo zanke for...in
Primer
let i:any; let arr:string[] = ['JavaTpoint', '2300', 'Java', 'Abhishek']; for(i in arr) { console.log(arr[i]) }
Izhod:
JavaTpoint 2300 Java Abhishek
Posredovanje nizov funkcijam
Matrike lahko posredujemo funkcijam tako, da podamo ime matrike brez indeksa.
Primer
kateri meseci so v q3
let arr:string[] = new Array('JavaTpoint', '2300', 'Java', 'Abhishek'); //Passing arrays in function function display(arr_values:string[]) { for(let i = 0;i <arr_values.length;i++) { console.log(arr[i]); } calling arrays in function display(arr); < pre> <p> <strong>Output:</strong> </p> <pre> JavaTpoint 2300 Java Abhishek </pre> <hr> <h2>TypeScript Spread operator</h2> <p>The spread operator is used to initialize arrays and objects from another array or object. We can also use it for object de-structuring. It is a part of the ES 6 version.</p> <p> <strong>Example</strong> </p> <pre> let arr1 = [ 1, 2, 3]; let arr2 = [ 4, 5, 6]; //Create new array from existing array let copyArray = [...arr1]; console.log('CopiedArray: ' +copyArray); //Create new array from existing array with more elements let newArray = [...arr1, 7, 8]; console.log('NewArray: ' +newArray); //Create array by merging two arrays let mergedArray = [...arr1, ...arr2]; console.log('MergedArray: ' +mergedArray); </pre> <p> <strong>Output:</strong> </p> <pre> CopiedArray: 1,2,3 NewArray: 1,2,3,7,8 MergedArray: 1,2,3,4,5,6 </pre> <hr> <h2>Array Methods</h2> <p>The list of array methods with their description is given below.</p> <table class="table"> <tr> <th>SN</th> <th>Method</th> <th>Description</th> </tr> <tr> <td>1.</td> <td>concat()</td> <td>It is used to joins two arrays and returns the combined result.</td> </tr> <tr> <td>2.</td> <td>copyWithin()</td> <td>It copies a sequence of an element within the array.</td> </tr> <tr> <td>3.</td> <td>every()</td> <td>It returns true if every element in the array satisfies the provided testing function.</td> </tr> <tr> <td>4.</td> <td>fill()</td> <td>It fills an array with a static value from the specified start to end index.</td> </tr> <tr> <td>5.</td> <td>indexOf()</td> <td>It returns the index of the matching element in the array, otherwise -1.</td> </tr> <tr> <td>6.</td> <td>includes()</td> <td>It is used to check whether the array contains a certain element or not.</td> </tr> <tr> <td>7.</td> <td>Join()</td> <td>It is used to joins all elements of an array into a string.</td> </tr> <tr> <td>8.</td> <td>lastIndexOf()</td> <td>It returns the last index of an element in the array.</td> </tr> <tr> <td>9.</td> <td>Pop()</td> <td>It is used to removes the last elements of the array.</td> </tr> <tr> <td>10.</td> <td>Push()</td> <td>It is used to add new elements to the array.</td> </tr> <tr> <td>11.</td> <td>reverse()</td> <td>It is used to reverse the order of an element in the array.</td> </tr> <tr> <td>12.</td> <td>Shift()</td> <td>It is used to removes and returns the first element of an array.</td> </tr> <tr> <td>13.</td> <td>slice()</td> <td>It returns the section fo an array in the new array.</td> </tr> <tr> <td>14.</td> <td>sort()</td> <td>It is used to sort the elements of an array.</td> </tr> <tr> <td>15.</td> <td>splice()</td> <td>It is used to add or remove the elements from an array.</td> </tr> <tr> <td>16.</td> <td>toString()</td> <td>It returns the string representation of an array.</td> </tr> <tr> <td>17.</td> <td>unshift()</td> <td>It is used to add one or more elements to the beginning of an array.</td> </tr> </table></arr_values.length;i++)>
Operator Spread TypeScript
Operator širjenja se uporablja za inicializacijo nizov in objektov iz drugega polja ali predmeta. Uporabljamo ga lahko tudi za destrukturiranje objektov. Je del različice ES 6.
Primer
let arr1 = [ 1, 2, 3]; let arr2 = [ 4, 5, 6]; //Create new array from existing array let copyArray = [...arr1]; console.log('CopiedArray: ' +copyArray); //Create new array from existing array with more elements let newArray = [...arr1, 7, 8]; console.log('NewArray: ' +newArray); //Create array by merging two arrays let mergedArray = [...arr1, ...arr2]; console.log('MergedArray: ' +mergedArray);
Izhod:
CopiedArray: 1,2,3 NewArray: 1,2,3,7,8 MergedArray: 1,2,3,4,5,6
Metode nizov
Seznam matričnih metod z njihovim opisom je podan spodaj.
SN | Metoda | Opis |
---|---|---|
1. | concat() | Uporablja se za združevanje dveh nizov in vrne kombinirani rezultat. |
2. | copyWithin() | Kopira zaporedje elementa znotraj matrike. |
3. | vsak() | Vrne true, če vsak element v matriki ustreza navedeni funkciji testiranja. |
4. | izpolni () | Zapolni matriko s statično vrednostjo od podanega začetnega do končnega indeksa. |
5. | indeks() | Vrne indeks ujemajočega se elementa v matriki, sicer -1. |
6. | vključuje() | Uporablja se za preverjanje, ali matrika vsebuje določen element ali ne. |
7. | pridruži se() | Uporablja se za združevanje vseh elementov matrike v niz. |
8. | lastIndexOf() | Vrne zadnji indeks elementa v matriki. |
9. | pop() | Uporablja se za odstranitev zadnjih elementov matrike. |
10. | Push() | Uporablja se za dodajanje novih elementov v matriko. |
enajst. | obratno() | Uporablja se za obračanje vrstnega reda elementa v matriki. |
12. | Shift() | Uporablja se za odstranitev in vrnitev prvega elementa matrike. |
13. | rezina () | Vrne razdelek za matriko v novi matriki. |
14. | razvrsti() | Uporablja se za razvrščanje elementov matrike. |
petnajst. | spoj () | Uporablja se za dodajanje ali odstranjevanje elementov iz matrike. |
16. | toString() | Vrne nizovno predstavitev matrike. |
17. | unshift() | Uporablja se za dodajanje enega ali več elementov na začetek matrike. |