A tömb hasonló típusú elemek homogén gyűjteménye, amelyeknek összefüggő memóriahelyük van.
A tömb egy felhasználó által meghatározott adattípus.
A tömb egy olyan adatstruktúra, amelyben hasonló adattípusú elemeket tárolunk. Egy tömbben csak rögzített elemkészletet tárolhatunk. Használhatjuk tárgyként is.
A tömb index alapú tároló, ahol az első elem a 0 indexen van tárolva. Az alábbi struktúra segít megérteni egy tömb szerkezetét.
Egy tömb jellemzői
- Egy tömb azonos adattípusú elemeket tárol.
- Szomszédos memóriahelyeken tárolt tömbelemek.
- A 2-D tömbelemek tárolása soronként sorra kerül egy összefüggő memóriahelyen.
- A tömbnév a kiinduló elem címét jelenti.
- A tömb méretét a deklaráció időpontjában kell inicializálni.
- A tömb méretének állandó kifejezésnek kell lennie, nem pedig változónak.
- A tömbelemeket az elem megfelelő indexértékének megadásával kérhetjük le.
Előny
Kód optimalizálás: Egy tömb segíti a kód optimalizálását, ami növeli a program sebességét és teljesítményét. Lehetővé teszi a tömbadatok hatékonyabb lekérését vagy rendezését.
Véletlenszerű hozzáférés: Lehetővé teszi egy tömb bármely adatának állandó időben történő elérését (függetlenül a helyzetétől és méretétől). Így bármely indexpozíción elhelyezkedő tömb bármely adatát közvetlenül megkaphatjuk.
Hátrány
Méretkorlát: Egy tömb lehetővé teszi, hogy csak meghatározott számú elemet tároljunk. A tömb deklarálása után nem tudjuk megváltoztatni a méretét. Ezért, ha a deklaráltnál több elemet akarunk beszúrni, ez nem lehetséges.
Tömb deklaráció
A JavaScripthez hasonlóan a TypeScript is támogatja a tömböket. Egy tömb deklarálásának két módja van:
1. Szögletes zárójelek használata.
let array_name[:datatype] = [val1,val2,valn..]
Példa:
let fruits: string[] = ['Apple', 'Orange', 'Banana'];
2. Általános tömbtípus használata.
java lista üres
let array_name: Array = [val1,val2,valn..]
Példa:
let fruits: Array = ['Apple', 'Orange', 'Banana'];
A tömb típusai a TypeScriptben
Kétféle tömb létezik:
- Egydimenziós tömb
- Többdimenziós tömb
Egydimenziós tömb
Az egydimenziós tömb egyfajta lineáris tömb, amely csak egy sort tartalmaz az adatok tárolására. Egyetlen szögletes zárójelet („[]”) tartalmaz. Elemeit sor- vagy oszlopindex segítségével érhetjük el.
Szintaxis
let array_name[:datatype];
Inicializálás
array_name = [val1,val2,valn..]
Példa
let arr:number[]; arr = [1, 2, 3, 4] console.log('Array[0]: ' +arr[0]); console.log('Array[1]: ' +arr[1]);
Kimenet:
Array[0]: 1 Array[1]: 2
Többdimenziós tömb
A többdimenziós tömb olyan tömb, amely egy vagy több tömböt tartalmaz. A többdimenziós tömbben az adatok sor- és oszlopalapú indexben (más néven mátrixformában) tárolódnak. A kétdimenziós tömb (2-D tömb) a többdimenziós tömb legegyszerűbb formája.
Szintaxis
let arr_name:datatype[][] = [ [a1,a2,a3], [b1,b2,b3] ];
Inicializálás
let arr_name:datatype[initial_array_index][referenced_array_index] = [ [val1,val2,val 3], [v1,v2,v3]];
Példa
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]);
Kimenet:
1 2 3 5 6 7
Tömb objektum
A tömbobjektumok lehetővé teszik, hogy több értéket tároljunk egyetlen változóban. Tömböt hozhatunk létre az Array objektum használatával. Az Array konstruktor a következő argumentumok átadására szolgál a tömb létrehozásához.
- Egy numerikus érték, amely egy tömb méretét jelöli vagy
- A vesszővel elválasztott értékek listája.
Szintaxis
let arr_name:datatype[] = new Array(values);
Példa
//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++)>
Tömbbejárás a for...in ciklus használatával
Példa
let i:any; let arr:string[] = ['JavaTpoint', '2300', 'Java', 'Abhishek']; for(i in arr) { console.log(arr[i]) }
Kimenet:
JavaTpoint 2300 Java Abhishek
Tömbök átadása függvényeknek
Tömböket adhatunk át a függvényeknek, ha a tömb nevét index nélkül adjuk meg.
Példa
távolítsa el az első karaktert az Excelben
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++)>
TypeScript Spread operátor
A spread operátor tömbök és objektumok inicializálására szolgál egy másik tömbből vagy objektumból. Használhatjuk objektumok destrukturálására is. Ez az ES 6 verzió része.
Példa
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);
Kimenet:
CopiedArray: 1,2,3 NewArray: 1,2,3,7,8 MergedArray: 1,2,3,4,5,6
Array Methods
A tömbmetódusok listája leírásukkal az alábbiakban található.
SN | Módszer | Leírás |
---|---|---|
1. | concat() | Két tömb összekapcsolására szolgál, és a kombinált eredményt adja vissza. |
2. | copyWithin() | Egy elem sorozatát másolja a tömbön belül. |
3. | minden() | Igaz értéket ad vissza, ha a tömb minden eleme megfelel a megadott tesztelési függvénynek. |
4. | tölt() | Egy tömböt tölt ki statikus értékkel a megadott kezdő-végi indextől. |
5. | indexe() | A tömbben lévő egyező elem indexét adja vissza, egyébként -1. |
6. | magába foglalja() | Annak ellenőrzésére szolgál, hogy a tömb tartalmaz-e egy bizonyos elemet vagy sem. |
7. | Csatlakozik() | Egy tömb összes elemének egy karakterláncba történő összekapcsolására szolgál. |
8. | lastIndexOf() | A tömb egy elemének utolsó indexét adja vissza. |
9. | Pop() | A tömb utolsó elemeinek eltávolítására szolgál. |
10. | Nyom() | Új elemek hozzáadására szolgál a tömbhöz. |
tizenegy. | fordított() | Egy elem sorrendjének megfordítására szolgál a tömbben. |
12. | Váltás() | Egy tömb első elemének eltávolítására és visszaadására szolgál. |
13. | szelet() | Egy tömb szakaszát adja vissza az új tömbben. |
14. | fajta() | Egy tömb elemeinek rendezésére szolgál. |
tizenöt. | splice() | A tömb elemek hozzáadására vagy eltávolítására szolgál. |
16. | toString() | Egy tömb karakterlánc reprezentációját adja vissza. |
17. | unshift() | Egy vagy több elem hozzáadására szolgál egy tömb elejére. |