การเติมค่าอาร์เรย์หลายมิติตามลำดับใน JavaScript
ในตัวอย่างก่อนหน้านี้ ตัวเลขทั้งหมดใน sub-array เหมือนกัน ทีนี้ลองทำให้ ตัวเลขเพิ่มขึ้นเรื่อยๆ แบบนี้:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
ในการทำเช่นนี้ จำเป็นต้องมีตัวแปรนับพิเศษ
ซึ่งจะเพิ่มค่าของตัวเองขึ้น
1 ในแต่ละรอบของการวนลูปภายใน
ค่าของตัวนับนี้เองที่เราจะ
เขียนลงในอาร์เรย์ แบบนี้:
let arr = [];
let k = 1; // ตัวนับ
for (let i = 0; i < 3; i++) {
arr[i] = [];
for (let j = 0; j < 3; j++) {
arr[i].push(k); // เขียนค่าตัวนับ
k++; // เพิ่มค่าตัวนับ
}
}
console.log(arr);
สามารถทำให้โค้ดง่ายขึ้นได้ โดยการเพิ่มค่า ตัวนับหลังจากกำหนดค่า:
let arr = [];
for (let i = 0, k = 1; i < 3; i++) {
arr[i] = [];
for (let j = 0; j < 3; j++) {
arr[i].push(k++);
}
}
console.log(arr);
โปรดทราบว่าในกรณีนี้
ต้องเป็น k++ เท่านั้น ไม่ใช่
++k เนื่องจากตัวเลือกที่สองจะทำ
การเพิ่มค่าตัวนับก่อน แล้วจึง
เขียนลงในอาร์เรย์ (ซึ่งผลก็คืออาร์เรย์
จะเริ่มจากเลขสอง ไม่ใช่จากเลขหนึ่ง แบบนี้:
[[2, 3, 4], [5, 6, 7], [8, 9, 10]])
สร้างอาร์เรย์ต่อไปนี้โดยใช้ลูปซ้อนสองชั้น:
[[1, 2], [3, 4], [5, 6], [7, 8]]
สร้างอาร์เรย์ต่อไปนี้โดยใช้ลูปซ้อนสองชั้น:
[[2, 4, 6], [8, 10, 12], [14, 16, 18], [20, 22, 24]]
สร้างอาร์เรย์สามมิติต่อไปนี้โดยใช้ลูปซ้อนสามชั้น:
[[[1, 2], [3, 4]], [[5, 6], [7, 8]]]
ผู้เขียนโค้ดต่อไปนี้ต้องการสร้างอาร์เรย์ แบบนี้:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
เพื่อจุดประสงค์นี้ จึงเขียนโค้ดต่อไปนี้:
let arr = [];
for (let i = 0; i < 3; i++) {
arr[i] = [];
for (let j = 0; j < 3; j++) {
arr[i][j] = k;
k++;
}
}
console.log(arr);
อย่างไรก็ตาม โค้ดที่เขียนไม่ได้ทำตามที่ตั้งใจ จงค้นหาและแก้ไขข้อผิดพลาดของผู้เขียน
ผู้เขียนโค้ดต่อไปนี้ต้องการสร้างอาร์เรย์ แบบนี้:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
เพื่อจุดประสงค์นี้ จึงเขียนโค้ดต่อไปนี้:
let arr = [];
let k = 1;
for (let i = 0; i < 3; i++) {
arr[i] = [];
for (let j = 0; j < 3; j++) {
arr[i][j] = k;
}
}
console.log(arr);
อย่างไรก็ตาม โค้ดที่เขียนไม่ได้ทำตามที่ตั้งใจ จงค้นหาและแก้ไขข้อผิดพลาดของผู้เขียน
ผู้เขียนโค้ดต่อไปนี้ต้องการสร้างอาร์เรย์ แบบนี้:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
เพื่อจุดประสงค์นี้ จึงเขียนโค้ดต่อไปนี้:
let arr = [];
let k = 1;
for (let i = 0; i < 3; i++) {
arr[i] = [];
for (let j = 0; j < 3; j++) {
arr[i][j] = k;
k--;
}
}
console.log(arr);
อย่างไรก็ตาม โค้ดที่เขียนไม่ได้ทำตามที่ตั้งใจ จงค้นหาและแก้ไขข้อผิดพลาดของผู้เขียน
ผู้เขียนโค้ดต่อไปนี้ต้องการสร้างอาร์เรย์ แบบนี้:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
เพื่อจุดประสงค์นี้ จึงเขียนโค้ดต่อไปนี้:
let arr = [];
let k;
for (let i = 0; i < 3; i++) {
arr[i] = [];
for (let j = 0; j < 3; j++) {
arr[i][j] = k;
k++;
}
}
console.log(arr);
อย่างไรก็ตาม โค้ดที่เขียนไม่ได้ทำตามที่ตั้งใจ จงค้นหาและแก้ไขข้อผิดพลาดของผู้เขียน
ผู้เขียนโค้ดต่อไปนี้ต้องการสร้างอาร์เรย์ แบบนี้:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
เพื่อจุดประสงค์นี้ จึงเขียนโค้ดต่อไปนี้:
let arr = [];
for (let i = 0, k = 1; i < 3; i++) {
arr[i] = [];
for (let j = 0; j < 3; j++) {
arr[i][j] = k;
}
}
console.log(arr);
อย่างไรก็ตาม โค้ดที่เขียนไม่ได้ทำตามที่ตั้งใจ จงค้นหาและแก้ไขข้อผิดพลาดของผู้เขียน
ผู้เขียนโค้ดต่อไปนี้ต้องการสร้างอาร์เรย์ แบบนี้:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
เพื่อจุดประสงค์นี้ จึงเขียนโค้ดต่อไปนี้:
let arr = [];
for (let i = 0, k = 1; i < 3; i++) {
arr[i] = [];
for (let j = 0, k++; j < 3; j++) {
arr[i][j] = k;
}
}
console.log(arr);
อย่างไรก็ตาม โค้ดที่เขียนไม่ได้ทำตามที่ตั้งใจ จงค้นหาและแก้ไขข้อผิดพลาดของผู้เขียน
ผู้เขียนโค้ดต่อไปนี้ต้องการสร้างอาร์เรย์ แบบนี้:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
เพื่อจุดประสงค์นี้ จึงเขียนโค้ดต่อไปนี้:
let arr = [];
for (let i = 0, k = 1; i < 3; i++) {
arr[i] = [];
for (let j = 0; j < 3; j++; k++) {
arr[i][j] = k;
}
}
console.log(arr);
อย่างไรก็ตาม โค้ดที่เขียนไม่ได้ทำตามที่ตั้งใจ จงค้นหาและแก้ไขข้อผิดพลาดของผู้เขียน
ผู้เขียนโค้ดต่อไปนี้ต้องการสร้างอาร์เรย์ แบบนี้:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
เพื่อจุดประสงค์นี้ จึงเขียนโค้ดต่อไปนี้:
let arr = [];
for (let i = 0, k = 1; i < 3; i++) {
arr[i] = [];
for (let j = 0; j < 3; j++) {
arr[i][j] = ++k;
}
}
console.log(arr);
อย่างไรก็ตาม โค้ดที่เขียนไม่ได้ทำตามที่ตั้งใจ จงค้นหาและแก้ไขข้อผิดพลาดของผู้เขียน
ผู้เขียนโค้ดต่อไปนี้ต้องการสร้างอาร์เรย์ แบบนี้:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
เพื่อจุดประสงค์นี้ จึงเขียนโค้ดต่อไปนี้:
let arr = [];
let k = 1;
for (let i = 0; i < 3; i++) {
arr[k] = [];
for (let j = 0; j < 3; j++) {
arr[i][j] = k;
k++;
}
}
console.log(arr);
อย่างไรก็ตาม โค้ดที่เขียนไม่ได้ทำตามที่ตั้งใจ จงค้นหาและแก้ไขข้อผิดพลาดของผู้เขียน
ผู้เขียนโค้ดต่อไปนี้ต้องการสร้างอาร์เรย์ แบบนี้:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
เพื่อจุดประสงค์นี้ จึงเขียนโค้ดต่อไปนี้:
let arr = [];
for (let i = 0, k = 1; i < 3; i++) {
arr[i] = [];
for (let j = 0; j < 3; k++) {
arr[i][j] = k;
}
}
console.log(arr);
อย่างไรก็ตาม โค้ดที่เขียนไม่ได้ทำตามที่ตั้งใจ จงค้นหาและแก้ไขข้อผิดพลาดของผู้เขียน