
ที่เก็บนี้มีคอลเลกชันของความท้าทายในการเข้ารหัส JavaScript ที่ออกแบบมาเพื่อช่วยให้คุณพัฒนาทักษะและทดสอบความรู้เกี่ยวกับภาษา แต่ละความท้าทายจะมาพร้อมกับไฟล์ readme ที่อธิบายคำสั่งปัญหาอินพุต/เอาต์พุตและข้อกำหนดเพิ่มเติมใด ๆ
คำตอบจะมีอยู่ใน /solutions/problem_title/answer.js ในขณะที่คำอธิบายจะได้รับใน /solutions/problem_title/readme.md
ตรวจสอบให้แน่ใจว่าได้แสดงที่เก็บข้อมูลหากคุณพบว่ามีประโยชน์ และยินดีต้อนรับการมีส่วนร่วมในที่เก็บข้อมูล
ก่อนที่จะก้าวไปข้างหน้าหากคุณเป็นผู้เริ่มต้นที่สมบูรณ์และไม่รู้อะไรเกี่ยวกับการเขียนโปรแกรมหรือ JavaScript คุณอาจต้องการดูแหล่งข้อมูลต่อไปนี้:
เขียนโปรแกรมที่พิมพ์ตัวเลขตั้งแต่ 1 ถึง 100 แต่สำหรับทวีคูณของสามพิมพ์ "Fizz" แทนตัวเลขและสำหรับทวีคูณของห้าพิมพ์ "Buzz" สำหรับตัวเลขที่ทวีคูณของทั้งสามและห้าพิมพ์ "Fizzbuzz" ตัวอย่างเช่นโปรแกรมของคุณควรพิมพ์:
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz
16
. . .คำอธิบายการแก้ปัญหา
สร้างฟังก์ชั่นที่ใช้สตริงเป็นอาร์กิวเมนต์และส่งคืน true ถ้ามันเป็น palindrome และ false ถ้ามันไม่ใช่ palindrome คือคำวลีตัวเลขหรือลำดับอื่น ๆ ของตัวละครที่อ่านไปข้างหน้าและย้อนกลับเหมือนกัน ตัวอย่างเช่น "racecar" เป็น palindrome แต่ "สวัสดี" ไม่ใช่
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่ใช้หมายเลข n เป็นอินพุตและส่งคืนหมายเลข n แรกในลำดับ Fibonacci ลำดับ Fibonacci เป็นชุดของตัวเลขที่แต่ละหมายเลขคือผลรวมของตัวเลขสองตัวก่อนหน้า ตัวเลขสองตัวแรกในลำดับคือ 0 และ 1 ตัวอย่างเช่นถ้า n คือ 5 ฟังก์ชันควรส่งคืนอาร์เรย์ [0, 1, 1, 2, 3]
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่ใช้สตริงและส่งคืนคำที่ยาวที่สุดในสตริง หากมีสองคำขึ้นไปที่มีความยาวเท่ากันให้ส่งคืนคำแรกที่ปรากฏในสตริง ตัวอย่างเช่นหากสตริงอินพุตคือ "สุนัขจิ้งจอกสีน้ำตาลเร็วกระโดดข้ามสุนัขขี้เกียจ" ฟังก์ชั่นควรกลับ "เร็ว"
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่ใช้สตริงเป็นอินพุตและส่งคืนสตริงกลับ ตัวอย่างเช่นหากสตริงอินพุตคือ "สวัสดี" ฟังก์ชั่นควรกลับ "Olleh"
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่ใช้สตริงเป็นอินพุตและส่งคืนสตริงด้วยตัวอักษรตัวแรกของแต่ละคำที่ใช้เป็นตัวพิมพ์ใหญ่ ตัวอย่างเช่นหากสตริงอินพุตคือ "สุนัขจิ้งจอกสีน้ำตาลด่วน" ฟังก์ชั่นควรกลับ "สุนัขจิ้งจอกสีน้ำตาลด่วน"
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่ใช้ตัวเลขเป็นอินพุตและส่งคืน true ถ้าเป็นหมายเลขเฉพาะและ false ถ้าไม่ใช่ จำนวนที่สำคัญคือจำนวนธรรมชาติที่มากกว่า 1 ซึ่งไม่ใช่ผลิตภัณฑ์ของตัวเลขธรรมชาติที่เล็กกว่าสองตัว ตัวอย่างเช่น 2, 3, 5, 7, 11 และ 13 เป็นตัวเลขที่สำคัญ แต่ 4, 6, 8 และ 9 ไม่ใช่
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่ใช้ตัวเลขเป็นอินพุตและส่งคืนผลรวมของตัวเลข ตัวอย่างเช่นหากหมายเลขอินพุตคือ 123 ฟังก์ชั่นควรส่งคืน 6 (1 + 2 + 3 = 6)
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่ใช้สตริงเป็นอินพุตและส่งคืนสตริงด้วยตัวอักษรตัวแรกของแต่ละคำที่ใช้เป็นตัวพิมพ์ใหญ่ ตัวอย่างเช่นหากสตริงอินพุตคือ "สุนัขจิ้งจอกสีน้ำตาลด่วน" ฟังก์ชั่นควรกลับ "สุนัขจิ้งจอกสีน้ำตาลด่วน" โปรดทราบว่าฟังก์ชั่นควรใช้ประโยชน์จากตัวอักษรตัวแรกของทุกคำแม้ว่ามันจะเป็นคำเล็ก ๆ เช่น "และ" หรือ "The"
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่ใช้ตัวเลขเป็นอินพุตและส่งคืนแฟคทอเรียล แฟคทอเรียลของตัวเลขเป็นผลผลิตของจำนวนเต็มบวกทั้งหมดจาก 1 ถึงจำนวนเอง ตัวอย่างเช่นแฟคทอเรียลของ 5 คือ 120 (1 _ 2 _ 3 _ 4 _ 5 = 120)
เขียนฟังก์ชั่นที่เรียกว่า factorial ที่ใช้ตัวเลขเป็นพารามิเตอร์และส่งคืนแฟคทอเรียล หากหมายเลขอินพุตคือ 0 ฟังก์ชั่นควรส่งคืน 1
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่ใช้อาร์เรย์ของตัวเลขเป็นอินพุตและส่งคืนหมายเลขที่ใหญ่ที่สุดอันดับสองในอาร์เรย์ ตัวอย่างเช่นหากอาร์เรย์อินพุตคือ [5, 10, 7, 2, 1] ฟังก์ชั่นควรกลับมา 7
เขียนฟังก์ชั่นที่เรียกว่า secondLargest ที่ใช้อาร์เรย์ของตัวเลขเป็นพารามิเตอร์และส่งคืนตัวเลขที่ใหญ่ที่สุดอันดับสองในอาร์เรย์
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่ใช้ตัวเลขสองตัวเป็นอินพุตและส่งคืนมัลติตัวเลขที่เล็กที่สุดที่เล็กที่สุด หลายทั่วไปที่เล็กที่สุดคือตัวเลขที่เล็กที่สุดที่หารด้วยหมายเลขอินพุตทั้งสอง ตัวอย่างเช่นตัวคูณที่เล็กที่สุดของ 3 และ 4 คือ 12
เขียนฟังก์ชั่นที่เรียกว่า smallestCommonMultiple ที่ใช้ตัวเลขสองตัวเป็นพารามิเตอร์และส่งคืนค่าตัวคูณที่เล็กที่สุดที่เล็กที่สุดของตัวเลขเหล่านั้น
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่ใช้อาร์เรย์เป็นอินพุตและส่งคืนอาร์เรย์ใหม่โดยลบองค์ประกอบที่ซ้ำกันทั้งหมด ตัวอย่างเช่นหากอาร์เรย์อินพุตคือ [1, 2, 2, 3, 4, 4, 5] ฟังก์ชั่นควรกลับมา [1, 2, 3, 4, 5]
เขียนฟังก์ชั่นที่เรียกว่า removeDuplicates ที่ใช้อาร์เรย์เป็นพารามิเตอร์และส่งคืนอาร์เรย์ใหม่โดยลบองค์ประกอบที่ซ้ำกันทั้งหมดออก
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่ใช้อาร์เรย์เป็นอินพุตและส่งคืนผลรวม subarray สูงสุด Subarrays เป็นอาร์เรย์ภายในอาร์เรย์อื่นซึ่งมีองค์ประกอบที่ต่อเนื่องกันเท่านั้น ตัวอย่างเช่นถ้าอาร์เรย์คือ [-3, -4, 5, -1, 2, -4, 6, -1] ฟังก์ชั่นควรกลับมา 8 ตั้งแต่ subarray [5, -1, 2, -4, 6] เป็น subarray ที่ต่อเนื่องกันสูงสุดพร้อมผลรวม 8
เขียนฟังก์ชั่น MaxSubArraySum ที่ใช้อาร์เรย์เป็นพารามิเตอร์และส่งคืนผลรวม subarray สูงสุด
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่ใช้ตัวเลขสองตัวเป็นอินพุตและสลับตัวเลข ตัวอย่างเช่นถ้าอินพุตเป็น num_1 = 5 และ num_2 = 10 ฟังก์ชั่นควรส่งคืน num_1 = 10 และ num_2 = 5
เขียน swap ฟังก์ชั่นที่ใช้สองจำนวนเต็มเป็นพารามิเตอร์และสลับ
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่ใช้อุณหภูมิในเซลเซียสเป็นอินพุตและส่งคืนอุณหภูมิที่เทียบเท่าในฟาเรนไฮต์ สูตรสำหรับการแปลงเซลเซียสเป็นฟาเรนไฮต์คือ f = (c * 1.8) + 32
เขียนฟังก์ชั่นที่เรียกว่า celsiusToFahrenheit ที่ใช้อุณหภูมิในเซลเซียสเป็นพารามิเตอร์และส่งคืนอุณหภูมิที่เทียบเท่าในฟาเรนไฮต์
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่ใช้ตัวเลขเป็นอินพุตและส่งคืนผลรวมจาก 1 ถึง n ตัวอย่างเช่นหากอินพุตคือ 10 ฟังก์ชั่นควรส่งคืน 55
เขียนฟังก์ชั่นที่เรียกว่า getNaturalSum ที่ใช้ตัวเลข n เป็นพารามิเตอร์และส่งคืนผลรวมของจำนวนธรรมชาติ
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่ใช้หมายเลขทศนิยมเป็นอินพุตและส่งคืนสตริงไบนารี ตัวอย่างเช่นหากอินพุตคือ 12 ฟังก์ชั่นควรกลับมา 1100
เขียนฟังก์ชั่นที่เรียกว่า decimalToBinary ที่ใช้เลขทศนิยมเป็น decimal ในพารามิเตอร์และส่งคืนสตริงไบนารี
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่ใช้สตริงเป็นอินพุตและส่งคืนจำนวนสระในสตริง ตัวอย่างเช่นหากสตริงคือ "Hello World!" ฟังก์ชั่นควรกลับมา 3
เขียนฟังก์ชั่นที่เรียกว่า countVowels ที่ใช้สตริงเป็น str ในพารามิเตอร์และส่งคืนจำนวนสระในสตริง
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่ใช้สตริง URL เป็นอินพุตและส่งคืนจริงถ้า URL ถูกต้องและเป็นเท็จเป็นอย่างอื่น ตัวอย่างเช่นหากสตริงคือ "https://www.example.com" ฟังก์ชั่นควรกลับมาเป็นจริง
เขียนฟังก์ชั่นที่เรียกว่า isValidURL ที่ใช้ url สตริงเป็น url ในพารามิเตอร์และส่งคืนจริงหรือเท็จ
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่ตรวจสอบว่าสตริงที่กำหนดเป็นชื่อผู้ใช้ที่ถูกต้องหรือไม่ ชื่อผู้ใช้ที่ถูกต้องควรมีเฉพาะอักขระตัวอักษรและตัวเลขและขีดเส้นใต้และควรมีความยาวระหว่าง 4 ถึง 16 อักขระ
เขียนฟังก์ชั่นที่เรียกว่า isValidUsername ที่ใช้ชื่อ username สตริงในพารามิเตอร์และส่งคืนจริงหรือเท็จ
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่ตรวจสอบว่าปีที่กำหนดเป็นปีที่ก้าวกระโดด
เขียนฟังก์ชั่นที่เรียกว่า isLeapYear ที่ใช้ year ในพารามิเตอร์และส่งคืนจริงหรือเท็จ
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชัน JavaScript เพื่อผลรวมขององค์ประกอบทั้งหมดในอาร์เรย์
เขียนฟังก์ชั่นที่เรียกว่า sumArray ที่ใช้ array ในพารามิเตอร์และส่งคืนผลรวมขององค์ประกอบอาร์เรย์ทั้งหมด
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นเพื่อค้นหาคำที่ยาวที่สุดในประโยค
เขียนฟังก์ชั่นที่เรียกว่า findLongestWord ที่ใช้สตริงเป็น sentence ของประเภทสตริงและส่งคืนคำที่ยาวที่สุดในประโยค
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นเพื่อตรวจสอบว่าวัตถุว่างเปล่าหรือไม่
เขียนฟังก์ชั่นที่เรียกว่า isObjEmpty ที่ใช้ Object obj เป็นอาร์กิวเมนต์จะส่งคืนจริงถ้ามันว่างเปล่ามิฉะนั้นเท็จ
คำอธิบายการแก้ปัญหา
เขียนฟังก์ชั่นที่สามารถแปลงเวลาจากรูปแบบ 12 ชั่วโมงเป็นรูปแบบ 24 ชั่วโมง
เขียนฟังก์ชั่นที่เรียกว่า convertTo24HrsFormat ซึ่งใช้ time เป็นพารามิเตอร์ในรูปแบบ HH:MMAM ตัวอย่างเช่น 12:10AM .
คำอธิบายการแก้ปัญหา
เปิดตัวภายใต้ MIT โดย @computenepal