Read elements of an array by position.

array-index An array stores values in order, read by a zero-based index. `length` gives the count, so the last index is `length - 1`.

Array Indexing

i
array_index.js
Replay: real traced execution (multi-file project)
const nums = [10, 20, 30, 40];
const i = 1;
const value = nums[i];
const last = nums[nums.length - 1];

console.log("value=" + value);
console.log("last=" + last);
console.log("size=" + nums.length);
const nums = [10, 20, 30, 40];
const i = 0;
const value = nums[i];
const last = nums[nums.length - 1];

console.log("value=" + value);
console.log("last=" + last);
console.log("size=" + nums.length);
const nums = [10, 20, 30, 40];
const i = 3;
const value = nums[i];
const last = nums[nums.length - 1];

console.log("value=" + value);
console.log("last=" + last);
console.log("size=" + nums.length);
  1. nums ← 10,20,30,40, i ← 1, value ← 20, nums[i] ← 20, last ← 40

    1const nums→ 10,20,30,40 = [10, 20, 30, 40];2const i→ 1 = 1; //@i=0, 33const value→ 20 = nums[i]→ 20;4const last→ 40 = nums[nums.length - 1]→ 40;56console.log("value=" + value20);7console.log("last=" + last40);8console.log("size=" + nums.length4);
    outputvalue=20
    last=40
    size=4
  1. nums ← 10,20,30,40, i ← 0, value ← 10, nums[i] ← 10, last ← 40

    1const nums→ 10,20,30,40 = [10, 20, 30, 40];2const i→ 0 = 0;3const value→ 10 = nums[i]→ 10;4const last→ 40 = nums[nums.length - 1]→ 40;56console.log("value=" + value10);7console.log("last=" + last40);8console.log("size=" + nums.length4);
    outputvalue=10
    last=40
    size=4
  1. nums ← 10,20,30,40, i ← 3, value ← 40, nums[i] ← 40, last ← 40

    1const nums→ 10,20,30,40 = [10, 20, 30, 40];2const i→ 3 = 3;3const value→ 40 = nums[i]→ 40;4const last→ 40 = nums[nums.length - 1]→ 40;56console.log("value=" + value40);7console.log("last=" + last40);8console.log("size=" + nums.length4);
    outputvalue=40
    last=40
    size=4

Follow the Indexes

  1. nums starts as [10, 20, 30, 40].
  2. The default index i is 1.
  3. nums[i] reads the second value, 20.
  4. nums[nums.length - 1] reads the last value, 40.
  5. The array length is 4, so the script prints size=4. | expression | value | | --- | --- | | nums[1] | 20 | | nums[nums.length - 1] | 40 | | nums.length | 4 |

Exercise: array_index.js

Reproduce value=20, last=40, and size=4, then use the pinned i variants 0 and 3 to predict value=10 and value=40 while last and size stay 40 and 4.