tablice JavaScript
tablice JavaScript
ponumerowana grupa elementów danych, traktowana jako jednostka. Tablica może zawierać: łańcuchy, liczby, obiekty i inne typy danych.
Każda wartość w tablicy – element tablicy.
przypisanie wartości tablicy, tworzenie tablicy:
var mountains = [’Everest’, 'Aconcagua’, 'Denali’, 'Kilimanjaro’, 'Vinson’, 'Blanc’, 'Kosciuszko’]; – literały tablicowe
var mountains = [’Everest’,
'Aconcagua’,
'Denali’];
var mountains = new Array(’Everest’, 'Aconcagua’, 'Denali’, 'Kilimanjaro’, 'Vinson’, 'Blanc’, 'Kosciuszko’);
<script type="text/javascript"> myMount=new Array(); myMount[0]="Everest"; myMount[1]="Aconcagua"; myMount[2]="Denali"; myMount[3]="Kilimanjaro"; myMount[4]="Vinson"; myMount[5]="Blanc"; myMount[6]="Kosciuszko"; myMount=new Array(Everest", "Aconcagua", Denali", "Kilimanjaro", Vinson", "Blanc", "Kosciuszko"); document.write(myMount[0]); var newMount=myMount.pop(); document.write(" " +newMount + " "); document.write(myMount.length); </script>
var idealArray = [3]; function buildArray(array) { console.log('zaczynamy od: ' + array); //zaczynamy od: 3 array.push(4,5,6); console.log('dodanie ostatniego elelmentu poprzez push: ' + array); //dodanie ostatniego elelmentu poprzez push: 3,4,5,6 array.pop(); console.log('usuniécie ostatniego elelmentu poprzez pop: ' + array); //usuniécie ostatniego elelmentu poprzez pop: 3,4,5 array.unshift(0,1,2); console.log('dodanie pierwszego elelmentu poprzez unshift: ' + array); //dodanie pierwszego elelmentu poprzez unshift: 0,1,2,3,4,5 array.shift(); console.log('usuniécie pierwszego elelmentu poprzez shift: ' + array); //usuniécie pierwszego elelmentu poprzez shift: 1,2,3,4,5 return array; //1,2,3,4,5 }
–
pobranie wartości z tablicy:
alert( mountains[3]);
name[index]
zmiana wartości tablicy:
mountains[5] = 'Elbrus’;
pobranie ilości wartości tablicy – poprzez właściwość length:
mountains.length
mountains[mountains.length-1] – ostatni element tablicy
myArray = []; myArray[0] = 2; myArray[5] = 5; console.log(myArray.length + ' ' + myArray[3]); // 6 undefined
dodanie elementu na koniec tablicy:
mountains[mountains.length]=’K2′;
mountains.push(’K2′, 'Lhotse’, 'Makalu’);
mountains.push(’K2′, 'Lhotse’, 'Makalu’);
dodanie elementu na poczatek tablicy:
mountains.unshift(’K2′, 'Lhotse’, 'Makalu’);
Tablice łańcuchów
myArrayBooks = ['Dzienniki motocyklowe', 'Żyć znaczy umrzeć', 'The fifth elephant'] console.log(myArrayBooks[2].substring(4,9)); // fifth
Dzielenie i łączenie łańcuchów
split(’ ’) – tworzy tablicę poszczególnych elementów.
myTitle = 'The fifth elephant'; mySplitTitle = myTitle.split(' ');
join(’ ’) – łączenie tablicy w łańcuch, bez wskazania znaku domyślnie używany jest przecinek ,
console.log(mySplitTitle.join(' ')); // The fifth elephant
Sortowanie
sortowanie leksykalne elementów tablicy.
Sortowanie według własnych parametrów za pomocą dodatkowych parametrów – funkcji sortującej z uwzględnieniem warunków:
- funkcja(a, b) zwróci wartość mniejszą od 0, to wartość a będzie miała mniejszy index od b
- funkcja(a, b) zwróci 0, to index wartości a i b pozostaną bez zmian
- funkcja(a, b) zwróci wartość większą od 0, to wartość a będzie miała większy index od b
function Compare(A, B) { if (A < B) {return -1} if (A > B) {return 1} //else A = B return 0 }
–
myListOfBooks = []; myListOfBooks[0] = 'Perfekcyjna niedoskonałość'; myListOfBooks[1] = 'Zaułek łgarza'; myListOfBooks[2] = 'Dzienniki motocyklowe'; myListOfBooks[3] = 'Król w żółci'; myFinalList = myListOfBooks.sort(); console.log(myFinalList); // ["Dzienniki motocyklowe", "Król w żółci", "Perfekcyjna niedoskonałość", "Zaułek łgarza"] listOfNumber = [5, 20, 700, 40, 300]; console.log(listOfNumber.sort()); // [20, 300, 40, 5, 700] listOfNumber = [5, 20, 700, 40, 300]; function compare(a, b) { return a-b; } console.log(listOfNumber.sort(compare)); //[5, 20, 40, 300, 700]
pomocne przy sortowaniu:
var idealArray = [1,2,3,4,5,6]; function messing(array) { for (var i = 0; i < array.length; i++) { var z = Math.floor(Math.random() * array.length); //getting the value from the intervalfrom 0 to array.length -1 var temp = array[i]; array[i] = array[z]; array[z] = temp; } return array; } //5,1,2,4,6,3
Tablice asocjacyjne
ich index jest stringiem:
alpha = []; alpha['Mount Everest'] = "8848 m n.p.m."; alpha['K2'] = "8611 m n.p.m."; alpha['Kanczendżanga'] = "8598 m n.p.m."; alpha['Mount Blanc'] = "4810 m n.p.m."; alpha['Matterhorn'] = "4478 m n.p.m."; for (i in alpha) { console.log('Elevation for ' + i + ' is ' + alpha[i]); } //Elevation for Mount Everest is 8848 m n.p.m. //Elevation for K2 is 8611 m n.p.m. //Elevation for Kanczendżanga is 8598 m n.p.m. //Elevation for Mount Blanc is 4810 m n.p.m. //Elevation for Matterhorn is 4478 m n.p.m.
Tablice wielowymiarowe
zagnieżdżenie tablicy w tablicy, każdy rekord to tablica, przydatne przy prowadzeniu np listy kontaktów:
persons = []; persons[0] = ['Andy' , 'andy@domain.com' , '04.04.2004']; persons[1] = ['John' , 'john@domain.com' , '03.03.2003']; persons[2] = ['Mary' , 'mary@domain.com' , '06.06.2006']; persons[3] = ['Jacob' , 'jacob@domain.com' , '07.07.2007']; for (i in persons) { console.log('My friend ' + persons[i][0] + ' has a birthday ' + persons[i][2]); } //My friend Andy has a birthday 04.04.2004 //My friend John has a birthday 03.03.2003 //My friend Mary has a birthday 06.06.2006 //My friend Jacob has a birthday 07.07.2007
Łączenie tablic
var mountainsAsia = ['Mount Everest', 'K2', 'Kangczendzonga', 'Lhotse']; var mountainsEurope = ['Mont Blanc', 'Pico de Aneto', 'Olimp']; var mountainsAfrica = ['Kibo', 'Mont Nabeba']; var mountainsWorld = mountainsAsia.concat(mountainsEurope); var mountainsWorldAll = mountainsAsia.concat(mountainsEurope, mountainsAfrica); console.log(mountainsAsia); //["Mount Everest", "K2", "Kangczendzonga", "Lhotse"] console.log(mountainsEurope); //["Mont Blanc", "Pico de Aneto", "Olimp"] console.log(mountainsAfrica); //["Kibo", "Mont Nabeba"] console.log(mountainsWorld); //["Mount Everest", "K2", "Kangczendzonga", "Lhotse", "Mont Blanc", "Pico de Aneto", "Olimp"] console.log(mountainsWorldAll); //["Mount Everest", "K2", "Kangczendzonga", "Lhotse", "Mont Blanc", "Pico de Aneto", "Olimp", "Kibo", "Mont Nabeba"]
–
Tablica images
document.images – zawiera pozycję dla każdego z obrazu na stronie.
Hope this helps and happy coding :)
Zobacz jeszcze
metody JavaScript
metody JavaScript to funkcje przetwarzające dane obiektu, lub inaczej funkcja przypisana do obiektu jako jego własność, czyli mogą być wywołane w kontekście obiektu. Metody mogą...