Chào các bạn, hôm nay cafedev chia sẻ cho ace một danh sách các bài tập từ cơ bản để nâng cao liên quan đến các kiến thức cơ bản trong lập trình Javascript. Cụ thể, trong bài này chúng ta sẽ làm quen với Object, this, new, constructorm, Optional. Từ đó giúp ace nâng cao kiến thức, kỹ năng, kinh nghiệm lập chương trình của mình và ứng dụng nó vào thực tế
Trước khi vào chi tiết bài tập, cafedev khuyến mãi ace mã bài tập của mình trước khi tham khảo bài hướng dẫn nhé
Để chạy hoặc mã hóa các bài tập sau, ace có thể mã hóa trên trang web này như sau
- Chọn mới
- Chọn dự án bạn muốn code, ở đây có nhiều lựa chọn như Javascript, AngularJS, React,…. Tất nhiên mình sẽ chọn Javascript
- Sau đó bạn sẽ thấy mã của bạn ở đâu
- Sau khi code after select Preview to view results
Ngoài ra ace cũng có thể sử dụng các IDE đã được giới thiệu tại đây để code và chạy code đó trên máy tính của mình nhé
Lưu ý. Mọi bài tập bên dưới cũng như các bài tập khác trong Series Javascript này được tạo ra từ các bài học và kiến thức của từng phần trong Series Javascript tự học này. Nếu ace nào chưa làm được hoặc chưa hiểu kỹ về bài học thì có thể tham khảo lại bộ tự học này nhé. Chúc các bạn thành công
bài 1
Viết mã, một dòng cho mỗi yêu cầu sau
- Tạo một đối tượng
2 trốnglet salaries = { John: 100, Ann: 160, Pete: 130 }
- Add property name with David value
- Thêm thuộc tính
3 với giá trị Xuanlet salaries = { John: 100, Ann: 160, Pete: 130 }
- Change the value of name to Cafedev
- Xóa tên thuộc tính khỏi đối tượng
bài 2
Viết hàm isEmpty [obj] trả về true nếu đối tượng không thuộc tính, ngược lại là false
To use for the code after
let schedule = {};
alert[ isEmpty[schedule] ]; // true
schedule["8:30"] = "get up";
alert[ isEmpty[schedule] ]; // false
bài 3
Chúng ta có một đối tượng lưu trữ tiền lương của nhóm chúng ta
let salaries = {
John: 100,
Ann: 160,
Pete: 130
}
Viết mã để tính tổng tất cả các khoản tiền và lưu trữ trong biến tổng. Nên là 390 trong ví dụ trên
Nếu tiền lương trống, thì kết quả phải là 0
bài 4
Tạo một hàm
let salaries = {
John: 100,
Ann: 160,
Pete: 130
}
0 nhân tất cả các thuộc tính số của đối tượng với 2with Object after
// before the call
let menu = {
width: 200,
height: 300,
title: "My menu cafedev"
};
multiplyNumeric[menu];
// after the call
menu = {
width: 400,
height: 600,
title: "My menu cafedev"
};
Xin lưu ý rằng
let salaries = {
John: 100,
Ann: 160,
Pete: 130
}
0 không cần trả lại bất cứ thứ gì. Nó sẽ sửa đổi các đối tượng tại chỗHướng dẫn xem và tải tài liệu từ trang cafedev tại đây
Bài giải 1,2,3,4
Bài 5
Ở đây hàm makeUser trả về một đối tượng
Kết quả của việc truy cập
let salaries = {
John: 100,
Ann: 160,
Pete: 130
}
2 của nó là gì? function makeUser[] {
return {
name: "David",
ref: this
};
}
let user = makeUser[];
alert[ user.ref.name ]; // What's the result?
bài 6
Tạo một đối tượng máy tính với ba phương thức sau
- read[] nhận hai giá trị và lưu chúng dưới dạng thuộc tính đối tượng
- sum[] return tổng các giá trị đã lưu
- mul[] nhân các giá trị đã lưu và trả về kết quả
bài 7
Có một đối tượng
let salaries = {
John: 100,
Ann: 160,
Pete: 130
}
3 cho phép lên và xuống________số 8Bây giờ, nếu chúng ta cần thực hiện một số cuộc gọi theo trình tự, có thể thực hiện như sau
ladder.up[];
ladder.up[];
ladder.down[];
ladder.showStep[]; // 1
Sửa đổi mã
let salaries = {
John: 100,
Ann: 160,
Pete: 130
}
4, let salaries = {
John: 100,
Ann: 160,
Pete: 130
}
5 và let salaries = {
John: 100,
Ann: 160,
Pete: 130
}
6 để thực hiện các cuộc gọi có thể thực hiện được như saulet salaries = {
John: 100,
Ann: 160,
Pete: 130
}
3Giải bài 5,6,7
Bài 8
Có thể tạo các hàm A và B như new A[] == new B[] không?
let salaries = {
John: 100,
Ann: 160,
Pete: 130
}
4Nếu đúng, hãy viết mã đó
bài 9
Tạo một hàm khởi động
let salaries = {
John: 100,
Ann: 160,
Pete: 130
}
7 tạo các đối tượng với 3 phương thức- read[] yêu cầu hai giá trị bằng cách sử dụng
8 và ghi nhớ chúng trong thuộc tính của đối tượnglet salaries = { John: 100, Ann: 160, Pete: 130 }
- sum[] return tổng của các thuộc tính này
- mul[] trả về nhân của các thuộc tính này
bài 10
Create a startup function
let salaries = {
John: 100,
Ann: 160,
Pete: 130
}
9Đối tượng được tạo với yêu cầu
- Lưu trữ “giá trị hiện tại” trong giá trị thuộc tính. Giá trị
0 được đặt thành tham số của hàm khởi tạo startValue// before the call let menu = { width: 200, height: 300, title: "My menu cafedev" }; multiplyNumeric[menu]; // after the call menu = { width: 400, height: 600, title: "My menu cafedev" };
- Phương thức đọc[] nên sử dụng
8 để đọc một số mới và thêm nó vào giá trịlet salaries = { John: 100, Ann: 160, Pete: 130 }
Nói cách khác, thuộc tính
// before the call
let menu = {
width: 200,
height: 300,
title: "My menu cafedev"
};
multiplyNumeric[menu];
// after the call
menu = {
width: 400,
height: 600,
title: "My menu cafedev"
};
2 là tổng của tất cả các giá trị do người dùng nhập vào với giá trị ban đầu là // before the call
let menu = {
width: 200,
height: 300,
title: "My menu cafedev"
};
multiplyNumeric[menu];
// after the call
menu = {
width: 400,
height: 600,
title: "My menu cafedev"
};
0Giải bài 8,9,10
Nguồn và Tài liệu tiếng anh tham khảo.
- nhà phát triển Mozilla
- w3schools
- jav. thông tin
- Geekforgeek
Tài liệu từ cafedev
- Full series tự học Javascript từ cơ bản tăng cao tại đây nha
- Ebook về javascript tại đây
- Các chuỗi tự học lập trình khác nhau
Nếu thấy hay và hữu ích, bạn có thể tham gia các kênh sau của cafedev để nhận được nhiều hơn nữa