Chuỗi JavaScript
- Trang trước Sự kiện JS
- Trang tiếp theo Phương thức chuỗi JS
Chuỗi JavaScript được sử dụng để lưu trữ và xử lý văn bản.
Chuỗi JavaScript
Chuỗi JavaScript là một số ký tự trong ngoặc kép.
Mô hình
var x = \"Bill Gates\";
Bạn có thể sử dụng dấu ngoặc kép đơn hoặc dấu ngoặc kép kép:
Mô hình
var carname = \"Porsche 911\"; var carname = 'Porsche 911';
Bạn có thể sử dụng dấu ngoặc kép trong chuỗi, chỉ cần không khớp với dấu ngoặc kép bao quanh chuỗi:
Mô hình
var answer = \"It's good to see you again!\"; var answer = \"He is called 'Bill'\"; var answer = 'He is called \"Bill\"';
dài của chuỗi
thuộc tính nội bộ length
Có thể trả về chuỗi củadài:
Mô hình
var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; var sln = txt.length;
ký tự đặc biệt
Do chuỗi phải được bao bọc bởi dấu ngoặc kép, JavaScript sẽ hiểu nhầm đoạn chuỗi này:
var y = "Trung Quốc là quê hương của gốm sứ, vì vậy china với "China (Trung Quốc)" có cùng tên."
chuỗi này sẽ được chia thành "Trung Quốc là quê hương của gốm sứ, vì vậy china với "China (Trung Quốc)" có cùng tên."
Cách giải quyết vấn đề này là sử dụng \ ký tự nghiêng ngược。
ký tự nghiêng ngược chuyển đổi ký tự đặc biệt thành ký tự chuỗi:
mã | Kết quả | miêu tả |
---|---|---|
\' | ' | đơn vị引 |
\" | " | dấu ngoặc kép |
\\\ | \ | dấu chéo ngược |
Mô hình
chuỗi \"
Chèn dấu ngoặc kép kép trong chuỗi:
Mô hình
var x = "Trung Quốc là quê hương của gốm sứ, vì vậy china và\"China (Trung Quốc)\" có cùng tên."
chuỗi \'
Chèn dấu ngoặc kép đơn trong chuỗi:
Mô hình
var x = 'It\'s good to see you again';
chuỗi \\\
Chèn dấu chéo ngược trong chuỗi:
Mô hình
var x = "ký tự \\ được gọi là dấu chéo ngược.";
Ký tự chuyển đổi (\
cũng có thể được sử dụng để chèn các ký tự đặc biệt khác trong chuỗi.
Bảy chuỗi chuyển đổi khác có hiệu lực trong JavaScript:
mã | Kết quả |
---|---|
\b | Phím Backspace |
\f | Trang |
\n | Dòng mới |
\r | Enter |
\t | Tab ngang |
\v | Tab dọc |
Bảy ký tự chuyển đổi này ban đầu được thiết kế để kiểm soát máy đánh chữ, máy điện传 và máy传真. Chúng không có ý nghĩa trong HTML.
Phân dòng dòng mã dài
Để có tính đọc tốt nhất, các nhà phát triển thường tránh để mỗi dòng mã vượt quá 80 ký tự.
Nếu một câu lệnh JavaScript không phù hợp với một dòng mã, vị trí phân dòng tốt nhất là sau một toán tử:
Mô hình
document.getElementById("demo").innerHTML = "Hello Kitty.";
Bạn cũng có thểtrong chuỗiphân dòng, chỉ cần một dấu chéo ngược:
Mô hình
document.getElementById("demo").innerHTML = "Hello \ Kitty!";
\
phương pháp này không phải là tiêu chuẩn ECMAScript (JavaScript).
Một số trình duyệt cũng không cho phép \
Khoảng trống sau ký tự.
Cách an toàn nhất để phân dòng chuỗi dài (nhưng có thể chậm) là sử dụng phép cộng chuỗi:
Mô hình
document.getElementById("demo").innerHTML = "Hello" + "Kitty!";
Bạn không thể phân dòng mã bằng dấu chéo ngược:
Mô hình
document.getElementById("demo").innerHTML = \ "Hello Kitty!";
Chuỗi có thể là đối tượng
Thường thì chuỗi JavaScript là giá trị nguyên thuỷ, được tạo bằng cách viết trực tiếp:
var firstName = "Bill"
Nhưng chuỗi cũng có thể thông qua từ khóa new
Định nghĩa là đối tượng:
var firstName = new String("Bill")
Mô hình
var x = "Bill"; var y = new String("Bill"); // typeof x sẽ trả về string // typeof y sẽ trả về object
Đừng tạo chuỗi thành đối tượng. Nó sẽ làm chậm tốc độ thực thi.
new
ký tự từ khóa có thể làm cho mã phức tạp hơn. Có thể tạo ra một số kết quả không mong muốn:
Khi sử dụng ==
ký hiệu bằng nhau, chuỗi bằng nhau là bằng nhau:
Mô hình
var x = "Bill"; var y = new String("Bill"); // (x == y) là true vì giá trị của x và y bằng nhau
Khi sử dụng ===
ký hiệu khi, chuỗi bằng nhau nhưng không bằng nhau vì ===
ký hiệu cần phải bằng cả loại và giá trị.
Mô hình
var x = "Bill"; var y = new String("Bill"); // (x === y) là false vì loại của x và y khác nhau (chuỗi và đối tượng)
thậm chí còn tồi tệ hơn. Đối tượng không thể so sánh:
Mô hình
var x = new String("Bill"); var y = new String("Bill"); // (x == y) là false vì x và y là đối tượng khác nhau
Mô hình
var x = new String("Bill"); var y = new String("Bill"); // (x === y) là false vì x và y là đối tượng khác nhau
Lưu ý sự khác biệt giữa (x==y) và (x===y).
JavaScript đối tượng không thể so sánh, việc so sánh hai JavaScript sẽ luôn trả về false
。
- Trang trước Sự kiện JS
- Trang tiếp theo Phương thức chuỗi JS