0% found this document useful (0 votes)
17 views14 pages

Learning Javascript Data Structures and Algorithms - Arrays

The document defines arrays to store monthly average temperatures and days of the week. It also defines an array to store the Fibonacci sequence and performs operations like unshifting, shifting, splicing and popping on another array. Finally, it defines a 3D matrix and prints its values using nested for loops.

Uploaded by

saori.jmdz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views14 pages

Learning Javascript Data Structures and Algorithms - Arrays

The document defines arrays to store monthly average temperatures and days of the week. It also defines an array to store the Fibonacci sequence and performs operations like unshifting, shifting, splicing and popping on another array. Finally, it defines a 3D matrix and prints its values using nested for loops.

Uploaded by

saori.jmdz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

averageTemp[3] = 52;

averageTemp[4] = 60.8;

 averageTemp

var daysOfWeek = new Array(); //{1}


var daysOfWeek = new Array(7); //{2}
var daysOfWeek = new Array('Sunday', 'Monday', 'Tuesday', 'Wednes day',
'Thursday', 'Friday', 'Saturday'); //{3}

new {1}
new
{2}
{3}

new
var averageTempJan = 31.9; []
var averageTempFeb = 35.3;
var averageTempMar = 42.4; var daysOfWeek = [];
var averageTempApr = 52;
var averageTempMay = 60.8;
var daysOfWeek = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday',
'Friday', 'Saturday'];

length
7
var averageTemp = [];
averageTemp[0] = 31.9;
averageTemp[1] = 35.3;
averageTemp[2] = 42.4;
20

daysOfWeek

for (var i=0; i<daysOfWeek.length; i++){


console.log(daysOfWeek[i]);
}

var numbers = [0,1,2,3,4,5,6,7,8,9];

var fibonacci = []; //{1}


fibonacci[1] = 1; //{2} numbers[numbers.length] = 10;
fibonacci[2] = 1; //{3}

for(var i = 3; i < 20; i++){


fibonacci[i] = fibonacci[i-1] + fibonacci[i-2]; ////{4}
}

for(var i = 1; i<fibonacci.length; i++){ //{5}


console.log(fibonacci[i]); //{6}
}

{1}
{2} {3}
push
push

numbers.push(11);
numbers.push(12, 13);

numbers
{4}
{6}
{5}

console.log {5}
{6} console.log(fibonacci)
console.log + 1
-1
for (var i=numbers.length; i>=0; i--){ push pop stack
numbers[i] = numbers[i-1];
}
numbers[0] = -1;

for (var i=0; i<numbers.length; i++){


numbers[i] = numbers[i+1];
}

array unshift

numbers.unshift(-2);
numbers.unshift(-4, -3);

unshift -2 -3 -4
numbers

i+1

numbers.length -1

pop

numbers.pop();
splice
shift
numbers.splice(5,0,2,3,4);

numbers.shift();

shift unshift queue


Chapter 4

numbers.splice(5,3,2,3,4);

splice

numbers.splice(5,3);
var averageTempDay1 = [72,75,79,79,81,81];
var averageTempDay2 = [81,79,75,75,73,72];

delete
var averageTemp = [];
remove averageTemp[0] = [72,75,79,79,81,81];
numbers[0] averageTemp[1] = [81,79,75,75,73,72];
undefined numbers[0] =
undefined splice pop
shift
//day 1 averageTemp
averageTemp[0] = [];
averageTemp[0][0] = 72; printMatrix(averageTemp);
averageTemp[0][1] = 75;
averageTemp[0][2] = 79;
averageTemp[0][3] = 79;
averageTemp[0][4] = 81;
averageTemp[0][5] = 81;
//day 2
averageTemp[1] = []; i j z
averageTemp[1][0] = 81;
averageTemp[1][1] = 79;
averageTemp[1][2] = 75; var matrix3x3x3 = [];
averageTemp[1][3] = 75; for (var i=0; i<3; i++){
averageTemp[1][4] = 73; matrix3x3x3[i] = [];
averageTemp[1][5] = 72; for (var j=0; j<3; j++){
matrix3x3x3[i][j] = [];
for (var z=0; z<3; z++){
matrix3x3x3[i][j][z] = i+j+z;
}
}
}

function printMatrix(myMatrix) {
for (var i=0; i<myMatrix.length; i++){
for (var j=0; j<myMatrix[i].length; j++){
console.log(myMatrix[i][j]);
}
}
}

for
i j
reverse
for (var i=0; i<matrix3x3x3.length; i++){ slice
for (var j=0; j<matrix3x3x3[i].length; j++){
for (var z=0; z<matrix3x3x3[i][j].length; z++){ some
console.log(matrix3x3x3[i][j][z]); true
}
} sort
}
toString
for valueOf toString

push pop shift unshift splice

concat

var zero = 0;
var positiveNumbers = [1,2,3];
concat var negativeNumbers = [-3,-2,-1];
every var numbers = negativeNumbers.concat(zero, positiveNumbers);
false
filter true
zero negativeNumbers
positiveNumbers numbers
forEach
join
indexOf
lastIndexOf

map for
true forEach
false for

var isEven = function (x) {


// returns true if x is a multiple of 2. numbers.forEach(function(x){
console.log(x); console.log((x % 2 == 0));
return (x % 2 == 0)  true : false; });
};
var numbers = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15];

return (x % 2 == 0)  true : false


return (x % 2 == 0)
map

var myMap = numbers.map(isEven);

myMap [false, true, false, true, false,


true, false, true, false, true, false, true, false, true, false]
every every isEven map
false myMap[0] false
myMap[1] true
numbers.every(isEven);
filter
numbers
true
isEven false
var evenNumbers = numbers.filter(isEven);

evenNumbers [2,
4, 6, 8, 10, 12, 14]

some every
some true

numbers.some(isEven); reduce reduce


previousValue currentValue index array
numbers
false
reduce
true

numbers.reduce(function(previous, current, index){


return previous + current;
});
120
for..of
Array map
reduce map
reduce

map filter reduce


Chapter
11
forEach

numbers.forEach(function (x) {
console.log(x % 2 == 0);
});
Chapter 1

numbers.forEach(x => {
console.log((x % 2 == 0));
});

@@iterator

copyWithin for forEach


for..of
entries @@iterator for..of
includes true false for (let n of numbers) {
console.log((n % 2 == 0)  'even' : 'odd');
}
find
https://goo.gl/qHYAN1
findIndex

fill
from
keys @@iterator
of
values @@iterator
Array @@iterator
Symbol.iterator
keys @@iterator
let iterator = numbers[Symbol.iterator]();
console.log(iterator.next().value); //1
console.log(iterator.next().value); //2 let aKeys = numbers.keys(); //retrieve iterator of keys
console.log(iterator.next().value); //3 console.log(aKeys.next()); // {value: 0, done: false }
console.log(iterator.next().value); //4 console.log(aKeys.next()); // {value: 1, done: false }
console.log(iterator.next().value); //5 console.log(aKeys.next()); // {value: 2, done: false }

next numbers keys


iterator.next() aKeys.next() undefined value done true
done false

iterator.next() undefined values @@iterator


numbers.value()
let aValues = numbers.values();
console.log(aValues.next()); // {value: 1, done: false }
https://goo.gl/L81UQW console.log(aValues.next()); // {value: 2, done: false }
console.log(aValues.next()); // {value: 3, done: false }

https://goo.gl/eojEGk

entries

entries @@iterator
Array.from

let aEntries = numbers.entries(); //retrieve iterator of key/value


let numbers2 = Array.from(numbers);
console.log(aEntries.next().value); //[0, 1] - position 0, value 1
console.log(aEntries.next().value); //[1, 2] - position 1, value 2
console.log(aEntries.next().value); //[2, 3] - position 2, value 3

number key let evens = Array.from(numbers, x => (x % 2 == 0));


value
evens numbersCopy

https://goo.gl/n4rOY4 numbersCopy.fill(0);

numbersCopy [0,0,0,0,0,0]

numbersCopy.fill(2, 1);

2
Array.of 1 [0,2,2,2,2,2]

let numbers3 = Array.of(1);


let numbers4 = Array.of(1,2,3,4,5,6); numbersCopy.fill(1, 3, 5);

1 3 5
[0,2,2,1,1,2]
let numbers3 = [1];
let numbers4 = [1,2,3,4,5,6];
fill

let numbersCopy = Array.of(...numbers4); let ones = Array(6).fill(1);

Array.from(numbers4) 6 1 [1,1,1,1,1,1]
spread Chapter 1
https://goo.gl/sqiHSK
... numbers4

https://goo.gl/FoJYNf

copyWithin

let copyArray = [1, 2, 3, 4, 5, 6];


fill
45 6
let numbersCopy = Array.of(1,2,3,4,5,6);
[4,5,6,4,5,6]

copyArray.copyWithin(0, 3);
4 5 b a a
b
a b sort
copyArray = [1, 2, 3, 4, 5, 6];
copyArray.copyWithin(1, 3, 5);

[1,4,5,4,5,6] function compare(a, b) {


if (a < b) {
https://goo.gl/hZhBE1 return -1;
}
if (a > b) {
return 1;
}
// a must be equal to b
return 0;
}

numbers.sort(compare);

sort Array
compareFunction
numbers
reverse

numbers.reverse();

numbers [15, 14, 13, 12, 11, 10, 9, 8, compareFunction


7, 6, 5, 4, 3, 2, 1] sort

numbers.sort(); name age age

[1, 10, 11, 12, 13, 14, 15, 2,


var friends = [
3, 4, 5, 6, 7, 8, 9] sort {name: 'John', age: 30},
{name: 'Ana', age: 20},
{name: 'Chris', age: 25}
];

function comparePerson(a, b){


numbers.sort(function(a,b){ if (a.age < b.age){
return a-b; return -1
}); }
if (a.age > b.age){
return 1
}
return 0; localeCompare
}
var names2 = ['Maève', 'Maeve'];
console.log(friends.sort(comparePerson)); console.log(names2.sort(function(a, b){
return a.localeCompare(b);
Ana (20) Chris (25) John }));
(30)
["Maeve", "Maève"]

indexOf
var names =['Ana', 'ana', 'john', 'John'];
console.log(names.sort()); lastIndexOf
numbers

console.log(numbers.indexOf(10));
console.log(numbers.indexOf(100));
ana John
9 -1

http://www.asciitab numbers.push(10);
console.log(numbers.lastIndexOf(10));
le.com/
console.log(numbers.lastIndexOf(100));

10 15
-1
compareFunction
100
["Ana", "ana", "John", "john"]

names.sort(function(a, b){
if (a.toLowerCase() < b.toLowerCase()){
return -1
}
if (a.toLowerCase() > b.toLowerCase()){
return 1 let numbers = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15];
} function multipleOf13(element, index, array) {
return 0; return (element % 13 == 0)  true : false;
}); }
console.log(numbers.find(multipleOf13));
console.log(numbers.findIndex(multipleOf13));
find findIndex

toString join

find findIndex find


findIndex toString

console.log(numbers.toString());
undefined
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
https://goo.gl/2vAaCh
10

- join

var numbersString = numbers.join('-');


console.log(numbersString);

includes true false

console.log(numbers.includes(15));
console.log(numbers.includes(20));

includes(15) true includes(20) false


20 numbers

http://www.w3school
s.com/js/js_arrays.asp
http://www
let numbers2 = [7,6,5,4,3,2,1];
console.log(numbers2.includes(4,5));
.w3schools.com/js/js_array_methods.asp

false 4 https://developer.mozilla.org/en-US/docs/Web/Jav
5 aScript/Reference/Global_Objects/Array http://goo.gl/vu1d
iT
https://goo.gl/tTY9bc

http://underscorejs.org/
http://lodash.com/
http://goo.gl/kZBsGx

TypeArray
let myArray = new TypedArray(length) TypedArray
TypedArray

Int8Array
Uint8Array
Uint8ClampedArray
Array
Int16Array
Uint16Array
Int32Array
Uint32Array
Float32Array
Float64Array

let length = 5;
let int16 = new Int16Array(length);

let array16 = [];


array16.length = length;

for (let i=0; i<length; i++){


int16[i] = i+1;
}
console.log(int16);

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy