Bài tập về Function trong JavaScript
Khóa học JavaScript cơ bản
Danh sách bài học
Bài tập về Function trong JavaScript
Trong bài này, Kteam và bạn sẽ thực hiện một số bài tập củng cố kiến thức về Function trong JavaScript
Để bài tập đạt hiệu quả tốt nhất bạn nên thực hiện theo các bước sau:
- Đọc đề các câu hỏi và tự đưa ra đáp án/ lời giải của mình.
- Tham khảo đáp án tại bài Bài tập về mảng trong JavaScript và rà sát đáp án/ lời giải của bản thân
- Xem video giải thích đáp án của bài này và note lại các ý chính để củng cố lại kiến thức.
Câu hỏi về Function trong JavaScript
Câu 1: Viết một hàm giúp kiểm tra số nguyên tố với n là tham số. Số nguyên tố là số chỉ có 2 ước là 1 và chính nó.
Câu 2: Nêu các khái niệm về iterable, iterator, và generator.
Câu 3: Arrow function là gì ? Lấy một ví dụ về arrow function.
Câu 4: Cho một function như sau:
function make(a, b) {
console.log(`Hello ${a}, I'm ${b}`)
}
Cho biết câu lệnh nào dưới đây cho kết quả là “Hello Kter, I’m Ton” ?
- make(‘Kter’, ‘Ton’)
- make([‘Kter’, ‘Ton’])
- make([Kter, Ton])
- make(‘Kter Ton’)
Câu 5: Nâng cao: Dùng một function đệ quy để tính giá trị với x, y, m là 3 số cho trước.
Câu 6: Khi nào thì một function trả về undefined ?
Đáp án Bài tập về vòng lặp trong JavaScript
Bạn có thể xem chi tiết các câu hỏi ở Bài tập về vòng lặp trong JavaScript
Đáp án câu 1:
Trong mỗi lần lặp, vòng lặp while sẽ thực hiện kiểm tra điều kiện trước khi thực hiện các lệnh. Còn do-while thì ngược lại, nó sẽ thực hiện các lệnh ít nhất một lần trước khi điều kiện được kiểm tra.
Đáp án câu 2:
Ta chỉ cần duyệt các số từ 1 đến n, và chọn ra các số là ước của n. Dưới đây là chương trình tham khảo
// n có sẵn
for(let i = 1; i <= n; i++) if(n % i == 0) console.log(i);
Mở rộng: Các bạn có thể cải tiến chương trình sao cho số lần lặp giảm xuống chứ ? Kteam sẽ để các bạn tự trả lời câu hỏi này.
Đáp án câu 3:
Từ nhận xét ban đầu như sau:
- Số chẵn chia hết cho 2
- Số lẻ chia 2 dư 1
- 0 không lẻ, cũng không chẵn.
Ta chỉ cần duyệt các số từ 1 đến n, và với mỗi số, tiến hành kiểm tra và tính tổng, thế là được.
Dưới đây là một vài phương án dành cho bài này, mời các bạn tham khảo:
Phương án 1:
// n có sẵn
tong_le = 0
tong_chan = 0
for(let i = 1; i <= n; i++)
{
if(i % 2 == 0) tong_chan += i; else
tong_le += i;
}
console.log('Tổng các số chẵn từ 1 đến n: ', tong_chan);
console.log('Tổng các số lẻ từ 1 đến n: ', tong_le);
Phương án 2:
// n có sẵn
tong_le = 0;
tong_chan = 0;
for(let i = 1; i <= n; tong_le += i, i += 2) {};
for(let i = 2; i <= n; tong_chan += i, i += 2) {};
console.log('Tổng các số chẵn từ 1 đến n: ', tong_chan);
console.log('Tổng các số lẻ từ 1 đến n: ', tong_le);
Đáp án câu 4:
- for không chứa gì à vòng lặp vô tận
- while(false) có điều kiện lặp là false à vòng lặp không được thực hiện.
- Vòng lặp biết trước số lần lặp.
Đáp án câu 5:
Nếu để ý kĩ, ta sẽ thấy là: Ngoại trừ từ đầu tiên, các từ tiếp theo bắt buộc phải nằm sau một dấu cách (‘ ‘). Từ đây, ta sẽ chuyển các kí tự nằm sau dấu cách sang in hoa, và in thường các kí tự còn lại. Dưới đây là code tham khảo:
// Cho một chuỗi s có sẵn
s1 = s[0].toUpperCase()
for(let i = 1; i < s.length; i++) {
if(s[i-1] == ' ') s1 += s[i].toUpperCase(); else s1 +=s[i].toLowerCase()
}
console.log(s1);
Đáp án câu 6:
Các giá trị sẽ được lặp qua: [0..99].
Tổng số lần lặp là: 99-0+1 = 100 (lần).
Vậy vòng lặp trên lặp 100 lần.
Tải xuống
Tài liệu
Nhằm phục vụ mục đích học tập Offline của cộng đồng, Kteam hỗ trợ tính năng lưu trữ nội dung bài học Bài tập về Function trong JavaScript dưới dạng file PDF trong link bên dưới.
Ngoài ra, bạn cũng có thể tìm thấy các tài liệu được đóng góp từ cộng đồng ở mục TÀI LIỆU trên thư viện Howkteam.com
Đừng quên like và share để ủng hộ Kteam và tác giả nhé!
Thảo luận
Nếu bạn có bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện Howkteam.com để nhận được sự hỗ trợ từ cộng đồng.
Nội dung bài viết
Tác giả/Dịch giả
Khóa học
Nếu bạn đang muốn bắt đầu học JavaScript thì đây chính là khóa học dành cho bạn. Trong khóa học này, Kteam sẽ cung cấp cho những kiến thức cơ bản nhất của ngôn ngữ lập trình JavaScript.
Khóa học này không đòi hỏi kiến thức nền tảng nhiều, nên giả sử như bạn chưa biết gì về lập trình, bạn vẫn có thể tham gia. Do đó dù bạn có là một người trái ngành cũng có thể tiếp cận - Đồng thời bạn cũng không cần phải là một thiên tài toán học để tham gia khóa học này 😉.