Các chuỗi trong JavaScript - Fedu

CHÀO MỪNG BẠN ĐẾN VỚI THƯ VIỆN HỌC TẬP & ĐÀO TẠO CƠ BẢN

Các chuỗi trong JavaScript

JavaScript

Hướng dẫn JavaScript

Biểu mẫu JavaScript

Đối tượng JavaScript

Hàm JavaScript

DOM JavaScript

Trình duyệt BOM

JavaScript Ajax

JavaScript Json

Chuỗi JavaScript được sử dụng để lưu trữ và thao tác văn bản. Một chuỗi JavaScript đơn giản lưu trữ một loạt các ký tự như “John Doe”.

Một chuỗi có thể là bất kỳ văn bản bên trong dấu ngoặc kép. Bạn có thể sử dụng dấu ngoặc kép đơn hoặc kép:

var carname = “Volvo XC60”;
var carname = ‘Volvo XC60’;

Bạn có thể sử dụng dấu ngoặc kép bên trong một chuỗi, miễn là chúng không khớp với các dấu ngoặc kép bao quanh chuỗi:

var answer = “It’s alright”;
var answer = “He is called ‘Johnny'”;
var answer = ‘He is called “Johnny”‘;

Chiều dài chuỗi

Chiều dài của một chuỗi được tìm thấy trong thuộc tính length:

var txt = “ABCDEFGHIJKLMNOPQRSTUVWXYZ”;
var sln = txt.length;

Ký tự đặc biệt

Bởi vì chuỗi phải được viết trong dấu ngoặc kép, JavaScript sẽ hiểu sai chuỗi này:

var y = “We are the so-called “Vikings” from the north.”

Chuỗi sẽ được cắt nhỏ thành “Chúng tôi là cái được gọi là”.

Giải pháp để tránh vấn đề này, là sử dụng ký tự \ escape. Ký tự gạch chéo ngược trở thành ký tự đặc biệt trong chuỗi ký tự.

var x = ‘It\’s alright’;
var y = “We are the so-called \”Vikings\” from the north.”

Ký tự gạch chéo (\) cũng có thể được sử dụng để chèn các ký tự đặc biệt khác trong một chuỗi. Đây là cách thường được sử dụng để chèn vào trong một văn bản với dấu gạch chéo ngược:

Code Outputs
\’ Dấu nháy đơn
\” Dấu nháy kép
\\ Dấu gạch chéo ngược

Năm ký tự escape khác được sử dụng trong JavaScript:

Code Outputs
\b Backspace
\r Carriage Return
\f Form Feed
\t Horizontal Tabulator
\v Vertical Tabulator

5 ký tự thoát ở trên được thiết kế để kiểm soát máy đánh chữ, máy điện thoại, và máy fax. Chúng không có ý nghĩa gì trong HTML.

Ngắt dòng mã dài

Để đoạn code dễ nhìn, các lập trình viên thường muốn tránh các dòng mã dài hơn 80 ký tự. Nếu một lệnh JavaScript không phù hợp trên một dòng, nơi tốt nhất để ngắt nó là sau một toán tử:

document.getElementById(“demo”).innerHTML =
“Hello Dolly!”;

Bạn cũng có thể chia nhỏ một dòng mã trong một chuỗi văn bản với dấu gạch chéo đơn:

document.getElementById(“demo”).innerHTML = “Hello \
Dolly!”;

Phương thức \ không phải là cách được ưa thích. Nó có thể không có sự hỗ trợ tổng quát. Một số trình duyệt không cho phép sử dụng dấu cách phía sau ký tự \.

Ví dụ:

document.getElementById(“demo”).innerHTML = “Hello” +
“Dolly!”;

Bạn không thể chia một dòng mã bằng dấu gạch chéo ngược:

document.getElementById(“demo”).innerHTML = \
“Hello Dolly!”;

Các chuỗi có thể là đối tượng

Thông thường, chuỗi JavaScript là các giá trị nguyên hàm, được tạo từ các ký tự:

var firstName = “John”;

Nhưng chuỗi cũng có thể được định nghĩa là các đối tượng với từ khoá mới:

var firstName = new String(“John”);

Ví dụ:

var x = “John”;
var y = new String(“John”);

// typeof x will return string
// typeof y will return object

Không tạo chuỗi như các đối tượng. Nó làm chậm tốc độ thực hiện. Từ khoá mới làm phức tạp mã. Điều này có thể tạo ra một số kết quả không mong muốn.

Khi sử dụng toán tử ==, các chuỗi equal đều bằng nhau:

var x = “John”;
var y = new String(“John”);

// (x == y) is true because x and y have equal values

Khi sử dụng toán tử ===, các chuỗi equal không bằng nhau, bởi vì toán tử === mong muốn sự bình đẳng trong cả kiểu và giá trị.

var x = “John”;
var y = new String(“John”);

// (x === y) is false because x and y have different types (string and object)

Hoặc thậm chí tệ hơn. Đối tượng không thể so sánh được:

var x = new String(“John”);
var y = new String(“John”);

// (x == y) is false because x and y are different objects

Ví dụ:

var x = new String(“John”);
var y = new String(“John”);

// (x === y) is false because x and y are different objects

Lưu ý sự khác biệt giữa (x == y) và (x === y). So sánh hai đối tượng JavaScript sẽ luôn luôn trả về false.