hello-algo/codes/javascript/chapter_array_and_linkedlist/list.js
Yudong Jin fcbaf101a4
Several bug fixes and improvements (#945)
* Update Dockerfile for code debugging.

* Format Python code using Black.

* Improve dark theme by defining html classes for the figures, animations and cover images.

* Fix several glossary translation.

* Update a code comment.

* Fix climbing_stairs_backtrack: the pruning should not require the sorted choices list.

* Update the code of array and list traversal.

* Fix a rendering issue of README.md

* Update code of list traversal.

* Fix array_definition.png

* Update README.md

* Fix max_capacity_moving_short_board.png

* Fix array.dart

* Fix array.dart

* Fix array.dart

* Fix array.dart
2023-11-14 21:27:35 +08:00

57 lines
1.3 KiB
JavaScript

/**
* File: list.js
* Created Time: 2022-12-12
* Author: Justin (xiefahit@gmail.com)
*/
/* 初始化列表 */
const nums = [1, 3, 2, 5, 4];
console.log(`列表 nums = ${nums}`);
/* 访问元素 */
const num = nums[1];
console.log(`访问索引 1 处的元素,得到 num = ${num}`);
/* 更新元素 */
nums[1] = 0;
console.log(`将索引 1 处的元素更新为 0 ,得到 nums = ${nums}`);
/* 清空列表 */
nums.length = 0;
console.log(`清空列表后 nums = ${nums}`);
/* 尾部添加元素 */
nums.push(1);
nums.push(3);
nums.push(2);
nums.push(5);
nums.push(4);
console.log(`添加元素后 nums = ${nums}`);
/* 中间插入元素 */
nums.splice(3, 0, 6);
console.log(`在索引 3 处插入数字 6 ,得到 nums = ${nums}`);
/* 删除元素 */
nums.splice(3, 1);
console.log(`删除索引 3 处的元素,得到 nums = ${nums}`);
/* 通过索引遍历列表 */
let count = 0;
for (let i = 0; i < nums.length; i++) {
count += nums[i];
}
/* 直接遍历列表元素 */
count = 0;
for (const x of nums) {
count += x;
}
/* 拼接两个列表 */
const nums1 = [6, 8, 7, 10, 9];
nums.push(...nums1);
console.log(`将列表 nums1 拼接到 nums 之后,得到 nums = ${nums}`);
/* 排序列表 */
nums.sort((a, b) => a - b);
console.log(`排序列表后 nums = ${nums}`);