MENU
Array
An array is a list-like object which can store an ordered sequence of values known as elements, indexed from 0 to (arr.length-1).
The following rows all result in the same 'data' array.
RESETRUNFULL
RESETRUNFULL
<!DOCTYPE html><html><body><script>
var data=[“Sophia",25,myFunction];
</script></body><html>
<!DOCTYPE html><html><body><script>
var data=new Array(“Sophia",25, myFunction);
</script></body><html>
<!DOCTYPE html><html><body><script>
var data=Array(“Sophia",25, myFunction);
</script></body><html>
<!DOCTYPE html><html><body><script>
var data=[];data[0]="Sophia";data[1]=25;data[2]=myFunction;
</script></body><html>
<!DOCTYPE html><html><body><script>
var data=new Array(); // ‘new’ is optionaldata[0]="Sophia";data[1]=25;data[2]=myFunction;
</script></body><html>
<!DOCTYPE html><html><body><script>
var data=Array(3); // reserves 3 elementsdata[0]="Sophia";data[1]=25;data[2]=myFunction;
</script></body><html>
Arrays can contain objects and be associated with properties. Properties are not counted as elements.
RESETRUNFULL
<!DOCTYPE html><html><body><script>
var arr=[3]; // an element
arr.p = {x:1}; // an object as a property
arr[1] = 5; // an array element
arr[1.5] = 6; // an object property
alert(arr[0]); // 3
alert(arr[1]); // 5
alert(arr.p); // [object Object]
alert(arr.length); // 2
alert(arr.hasOwnProperty(1.5)); // true
arr[30] = {y:2}; // an object as an element
alert(arr['length']); // 31
alert(arr[1.5]); // 6
arr.length = 3; // truncates the array
alert(arr[30]); // undefined
</script></body><html>
Elements in an array literal can be skipped, in which case the values for the elements will be 'undefined'.
RESETRUNFULL
<!DOCTYPE html><html><body><script>
var a = [0,,2,3,,,6,,];
</script></body><html>
Multi-dimensional arrays can be created by nesting arrays.
+ tries to convert an object to a primitive.
RESETRUNFULL
RESETRUNFULL
<!DOCTYPE html><html><body><script>
var ma = [[1,2,3],['a','b','c']];alert(ma[1][2]); // c
</script></body><html>
<!DOCTYPE html><html><body><script>
console.log([]+[]); // ""console.log([]+{}); // [object Object]console.log({}+[]); // [object Object]console.log({}+{}); // [object Object][object Object]
</script></body><html>
<!DOCTYPE html><html><body><script>
console.log(++[[]][+[]]+[+[]]); // 10
</script></body><html>
Note that the callbacks passed into some Array prototype functions (eg. some(), every(), forEach(), reduce(), find(), map()) may take two additional parameters, ie. the index and the whole array.