Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript
JavaScript
  1. กรองอาร์เรย์ด้วยอาร์เรย์อีกอัน (Filter Array by Another Array) - JavaScript

    กรองอาร์เรย์แรก ให้เหลือเฉพาะค่าที่ ไม่อยู่ ในอาร์เรย์ที่สอง (Difference / Exclusion) ตัวอย่าง arr1 = [4, 23, 7, 6, 3, 6, 4, 3, 56, 4] arr2 = [4, 56, 23] Result: [7, 6, 3, 6, 3] ตัวอย่างโค้ด !arr2.includes(el)); console.log(filterArray( [4, 23, 7, 6, 3, 6, 4, 3, 56, 4], [4, 56, 23] )); ผลลั

  2. สร้าง Nested JSON Object จากสตริงคู่ตัวอักษร - JavaScript

    จากสตริงที่มีตัวอักษรเป็นคู่ (AA BB CC DD EE) สร้าง Nested Object แบบลูกโซ่ ตัวอย่าง AABBCCDDEE → { code: AA, sub: { code: BB, sub: { code: CC, sub: { code: DD, sub: { code: EE, sub: {} } } } } } ตัวอย่างโค้ด { const res = {}; let ref = res; while (str) { const pair = str.substring(0

  3. ตรวจสอบความเท่ากันของอาร์เรย์ตามลำดับ (Sequence-dependent Equality) - JavaScript

    เปรียบเทียบสองอาร์เรย์ ว่าตำแหน่งเดียวกันมีค่าเท่ากันกี่ตำแหน่ง (Position-wise Equality) ตัวอย่าง arr1 = [4, 7, 4, 3, 3, 3, 7, 6, 5] arr2 = [6, 5, 4, 5, 3, 2, 5, 7, 5] Match at index: 4, 7, 8 → Count: 3 ตัวอย่างโค้ด { let count = 0; for (let i = 0; i < arr1.length; i++) { if (arr1[i] ===

  4. สร้างอาร์เรย์ 2 มิติ ตามเงื่อนไข Row, Col, Value - JavaScript

    สร้างอาร์เรย์ 2 มิติ (Matrix) ขนาด Row × Col เติมค่า Value เดียวกันทุกเซลล์ ตัวอย่าง row=2, col=3, val=10 → [[10,10,10], [10,10,10]] ตัวอย่างโค้ด Array(col).fill(val)); console.log(constructArray(2, 3, 10)); ผลลัพธ์ [ [ 10, 10, 10 ], [ 10, 10, 10 ] ] วิธีแบบ Loop (Classic) { const res = [];

  5. จัดกลุ่มอาร์เรย์ 2 มิติตามคอลัมน์แรก - JavaScript

    จากอาร์เรย์ของ [key, value] จัดกลุ่ม Value ทั้งหมดที่มี Key เดียวกัน ตัวอย่าง [[1,45], [1,34], [1,49], [2,34], [4,78], [2,67], [4,65]] → [[45,34,49], [34,67], [78,65]] ตัวอย่างโค้ด { if (!acc.map.has(key)) { acc.map.set(key, acc.res.push([val]) - 1); } else { acc.res[acc.map.g

  6. ขยายตัวเลขเป็น Place Values (Expanded Form) - JavaScript

    แยกตัวเลขเป็น Place Values (ค่าตำแหน่ง) เช่น 123 → [100, 20, 3] ตัวอย่างโค้ด (Recursive) { if (num) { const val = (num % 10) * factor; res.unshift(val); return placeValue(Math.floor(num / 10), res, factor * 10); } return res; }; console.log(placeValue(123)); ผลลัพธ์ [ 100, 20,

  7. Reverse Mapping Object (Value to Key) - JavaScript

    สร้าง Reverse Map จาก Object: Key ↔ Value สลับกัน เพื่อค้นหา Key จาก Value ได้เร็ว ตัวอย่าง { Pineapple: 38, Apple: 110, Pear: 109 } → Find Key by Value: findKey(110) → Apple ตัวอย่างโค้ด { acc[obj[key]] = key; return acc; }, {}); return reversed[val] || false; }; console.log(findKey

  8. กรองอาร์เรย์ให้เหลือเฉพาะพาลินโดรม - JavaScript

    กรองอาร์เรย์เก็บเฉพาะเอลีเมนต์ที่เป็นพาลินโดรม (Palindrome) ทั้งตัวเลขและสตริง ตัวอย่าง [carecar, 1344, 12321, did, cannot] → [12321, did] ตัวอย่างโค้ด { const str = String(el); let i = 0, j = str.length - 1; while (i isPalindrome(el)); console.log(findPalindrome([carecar, 1344, 12321, di

  9. เรียงลำดับค่าของ Object - JavaScript

    ดึงค่า (Values) จาก Object แล้วเรียงลำดับจากน้อยไปมาก คืนค่าเป็นอาร์เรย์ ตัวอย่างโค้ด a - b); console.log(sortObject(obj)); ผลลัพธ์ [ 11, 23, 56, 67, 88 ] คำอธิบาย Object.values(obj) ดึงค่าทั้งหมดเป็นอาร์เรย์ a-b) เรียงตัวเลขน้อยไปมาก (Default sort เป็น String) รักษา Key-Value Pair a[1

  10. ลบเอลีเมนต์ที่ซ้ำทั้งหมด (Remove All Duplicates) - JavaScript

    ลบเอลีเมนต์ที่ซ้ำกัน ทั้งหมด ออกจากอาร์เรย์ ค่าที่ปรากฏมากกว่า 1 ครั้ง จะหายไปหมด ไม่เหลือเลย ตัวอย่าง [763, 55, 43, 22, 32, 43, 763, 43] → [55, 22, 32] (763 และ 43 ซ้ำ จึงหายไปหมด) ตัวอย่างโค้ด array.indexOf(item) === array.lastIndexOf(item) ); console.log(deleteDuplicate([763, 55, 43,

  11. แบนอาร์เรย์ซ้อน (Flatten Array) ด้วย Loop และ Recursion - JavaScript

    ทำให้อาร์เรย์ซ้อน (Nested Array) กลายเป็นอาร์เรย์แบน (Flat Array) หนึ่งระดับ รวมค่า falsy (false, null) ด้วย ตัวอย่าง [[1, 2, 3], [4, 5, [5, false, 6, [5, 8, null]]], [6]] → [1, 2, 3, 4, 5, 5, false, 6, 5, 8, null, 6] ตัวอย่างโค้ด (Prototype Extension) const flatten = function() { let res = [];

  12. จัดกลุ่มเอลีเมนต์เหมือนกันในอาร์เรย์ - JavaScript

    จัดกลุ่มเอลีเมนต์ที่เหมือนกันในอาร์เรย์ ให้อยู่ใน Sub-array เดียวกัน (Group Identical Elements) ตัวอย่าง [234, 65, 65, 2, 2, 234] → [[234, 234], [65, 65], [2, 2]] ตัวอย่างโค้ด { const map = {}; const groups = []; for (const val of arr) { if (typeof map[val] === number) { groups

  13. ลบเอลีเมนต์ซ้ำติดกัน (Consecutive Duplicates) ด้วย Recursion - JavaScript

    ลบเอลีเมนต์ที่ซ้ำกันติดกัน (Consecutive Duplicates) ในอาร์เรย์ แบบ In-place ใช้ Recursion ตัวอย่าง [17, 17, 17, 12, 12, 354, 354, 1, 1, 1] → [17, 12, 354, 1] ตัวอย่างโค้ด { if (len < arr.length) { if (deletable) { arr.splice(len, 1); len--; } return comp(arr, len + 1, ar

  14. หา Index ของเอลีเมนต์ซ้ำตัวแรก - JavaScript

    หา Index แรกของเอลีเมนต์ที่ปรากฏมากกว่า 1 ครั้ง ในอาร์เรย์ (First Duplicate Index) โดยไม่ใช้ Extra Space ตัวอย่าง [0, 1, 1, 2, 3, 4, 4, 5] → Index 1 (ค่า 1 ซ้ำครั้งแรก) ตัวอย่างโค้ด { for (let i = 0; i < arr.length; i++) { if (arr.lastIndexOf(arr[i]) !== i) { return i; } } ret

  15. ลบค่าซ้ำและเติม Empty String ท้ายอาร์เรย์ - JavaScript

    ลบค่าซ้ำออกจากอาร์เรย์ (เก็บแค่ค่าที่ปรากฏครั้งสุดท้าย) แล้วเติม Empty String จำนวนเท่ากับที่ลบไป ตัวอย่าง Input: [1,2,3,1,2,3,2,2,3,4,5,5,12,1,23,4,1] Output: [2, 3, 5, 12, 23, 4, 1, , , , , , , , , , ] ตัวอย่างโค้ด { if (a.lastIndexOf(val) === i) { acc.res.push(val); } else {

  16. ค่าเฉลี่ยสะสมของคู่เอลีเมนต์ติดกัน - JavaScript

    สร้างอาร์เรย์ใหม่ที่แต่ละค่า = ค่าเฉลี่ยของเอลีเมนต์นั้นกับตัวก่อนหน้า (ตัวแรกคือตัวมันเอง) ตัวอย่าง [3, 5, 7, 8, 3, 5, 7, 4, 2, 8, 4, 2, 1] → [3, (3+5)/2=4, (5+7)/2=6, (7+8)/2=7.5, ...] ตัวอย่างโค้ด (el + (a[i-1] || 0)) / (1 + !!i)); console.log(consecutiveAverage([3, 5, 7, 8, 3, 5, 7, 4, 2, 8,

  17. หาค่าสูงสุดของแต่ละ Sub-array ในอาร์เรย์ 2 มิติ - JavaScript

    จากอาร์เรย์ 2 มิติ หาค่าสูงสุด (Max) ของแต่ละ Sub-array รวมเป็นอาร์เรย์ใหม่ ตัวอย่าง [[1, 16, 34, 48], [6, 66, 2, 98], [43, 8, 65, 43], [32, 98, 76, 83], [65, 89, 32, 4]] → [48, 98, 65, 98, 89] ตัวอย่างโค้ด Math.max(...sub)); console.log(constructBig(arr)); ผลลัพธ์ [ 48, 98, 65, 98, 89 ] คำอธิ

  18. หาค่าสูงสุดในอาร์เรย์หลายมิติ (Multi-Dimensional Array) - JavaScript

    หาค่าสูงสุด (Maximum) ในอาร์เรย์ซ้อน (Nested Array) ทุกระดับ ใช้ Recursion ตัวอย่าง [34, 65, 67, [43, 76, 87, 23, 56, 7, [54, 7, 87, 23, 79, 994, 2], 54], 54, 4, 2] → Max: 994 ตัวอย่างโค้ด { for (let i = 0; i greatest) { greatest = arr[i]; } } return greatest; }; ผลลัพธ์ 994 ปั

Total 5941 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:72/298  20-คอมพิวเตอร์/Page Goto:1 66 67 68 69 70 71 72 73 74 75 76 77 78