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.

 

metody tablic