Bài 1: Giới thiệu về Trình quản lý quảng cáo

Bài Giảng JavaScript: Xử Lý Dữ Liệu Chuỗi và Thời Gian

1. Xử lý chuỗi trong JavaScript

1.1. Tạo chuỗi

Trong JavaScript, chuỗi (String) có thể được khai báo bằng nháy kép (") hoặc nháy đơn ('):

let str1 = "Hello World";
let str2 = 'JavaScript';

Hoặc dùng template literals (backticks ``):

let name = "Anh Phuong";
let message = `Xin chào, ${name}!`;
console.log(message); // Output: Xin chào, Anh Phuong!

1.2. Các phương thức thao tác với chuỗi

a. Độ dài chuỗi

let text = "JavaScript";
console.log(text.length); // Output: 10

b. Các phương thức thao tác

let str = "JavaScript is awesome!";

// Chuyển đổi chữ hoa, chữ thường
console.log(str.toUpperCase()); // "JAVASCRIPT IS AWESOME!"
console.log(str.toLowerCase()); // "javascript is awesome!"

// Tách chuỗi
console.log(str.split(" ")); // ["JavaScript", "is", "awesome!"]

// Cắt chuỗi
console.log(str.substring(0, 10)); // "JavaScript"
console.log(str.slice(-7)); // "awesome!"

// Thay thế chuỗi
console.log(str.replace("awesome", "great")); // "JavaScript is great!"

// Kiểm tra chuỗi con
console.log(str.includes("JavaScript")); // true

2. Xử lý thời gian trong JavaScript

2.1. Tạo đối tượng Date

let now = new Date(); // Ngày giờ hiện tại
console.log(now);

Hoặc truyền tham số:

let specificDate = new Date(2024, 6, 15, 10, 30, 0); // 15/07/2024 10:30:00
console.log(specificDate);

2.2. Lấy thông tin từ Date

let today = new Date();
console.log(today.getFullYear()); // Lấy năm
console.log(today.getMonth() + 1); // Lấy tháng (0-11, cần +1)
console.log(today.getDate()); // Lấy ngày trong tháng
console.log(today.getDay()); // Lấy thứ trong tuần (0 - CN, 6 - Thứ 7)
console.log(today.getHours()); // Lấy giờ
console.log(today.getMinutes()); // Lấy phút
console.log(today.getSeconds()); // Lấy giây

2.3. Định dạng thời gian

let date = new Date();
let formattedDate = `${date.getDate()}/${date.getMonth() + 1}/${date.getFullYear()}`;
console.log(formattedDate); // "15/07/2024"

2.4. So sánh thời gian

let date1 = new Date("2024-07-15");
let date2 = new Date("2024-08-01");
console.log(date1 < date2); // true

2.5. Tính toán thời gian

let now = new Date();
let nextWeek = new Date();
nextWeek.setDate(now.getDate() + 7);
console.log(nextWeek); // Ngày giờ cách hiện tại 7 ngày

3. Bài tập thực hành

  1. Viết hàm nhận vào chuỗi và trả về chuỗi ngược lại.
  2. Viết hàm tính số ngày giữa hai ngày cho trước.
  3. Viết hàm chuyển đổi chuỗi thành chữ hoa từng từ.

4. Kết Luận

Trong bài học này, chúng ta đã tìm hiểu các phương thức quan trọng dùng để xử lý chuỗi và thời gian trong JavaScript. Các kiến thức này rất hữu ích khi xây dựng các ứng dụng web tương tác.

Bài tập nâng cao: Hiển thị lịch tháng hiện tại

Viết một hàm displayCurrentMonthCalendar() để hiển thị lịch của tháng hiện tại theo định dạng sau:

Tháng 3, 2025
Su Mo Tu We Th Fr Sa
                   1
 2  3  4  5  6  7  8
 9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31

Yêu cầu:

  • Xác định tháng hiện tại và số ngày trong tháng đó.
  • Xác định ngày bắt đầu của tháng rơi vào thứ mấy.
  • Căn chỉnh ngày cho đúng vị trí theo hàng cột của tuần (Chủ Nhật - Thứ Bảy).
  • In ra lịch theo định dạng đẹp và dễ đọc.

Gợi ý:

  • Dùng new Date() để lấy tháng và năm hiện tại.
  • Dùng Date.getDay() để xác định ngày đầu tiên của tháng rơi vào thứ mấy.
  • Sử dụng vòng lặp để tạo lịch theo hàng ngang, đảm bảo căn chỉnh chính xác.
  • Dùng hàm setDate() để tính ngày cuối tháng

Nộp bài: File html và js hoặc biên soạn trực tiếp tại nội dung trả lời