Khai báo chuỗi trong JavaScript | Laptrinhcanban.com

Khai báo chuỗi trong JavaScript

Hướng dẫn cách khai báo chuỗi trong JavaScript. Bạn sẽ biết chuỗi trong JavaScript là gì cũng như các cách khai báo chuỗi trong JavaScript sau bài học này.

Chuỗi trong JavaScript là gì

Chuỗi trong JavaScript ( tiếng anh : String in JavaScript) là một hằng số bao gồm nhiều ký tự nối lại với nhau. Trong JavaScript, mỗi ký tự được viết dưới dạng chuỗi được lưu trữ dưới dạng ký tự 16-bit Unicode (UTF-16). Bạn có thể sử dụng ký tự chữ, số và ký tự tiếng Nhật để tạo chuỗi trong JavaScript.
Lại nữa, chúng ta có thể lưu chuỗi ký tự trong file JavaScript bằng nhiều loại mã ký tự khác nhau như SJIS , Latin1 hay UTF-8. Tuy nhiên để có thể lưu được cả tiếng Việt có dấu hoặc ký tự tiếng Nhật thì bạn nên lưu chuỗi trong file JavaScript bằng mã UTF-8.

Khai báo chuỗi trong JavaScript

Để khai báo chuỗi trong JavaScript, chúng ta đặt các ký tự tạo chuỗi đó nằm giữa cặp dấu nháy đơn '' hoặc dấu nháy kép "" như dưới đây:

"Chuỗi ký tự"
Hoặc
'Chuỗi ký tự'

Chúng ta có thể sử dụng các ký tự như chữ số, chữ cái, dấu cách,ký tự tiếng Nhật để tạo chuỗi ký tự trong JavaScript, giống như ví dụ dươi đây:

'Hello, JavaScript';
"myname";
"Kiyoshi";
'2021';
"きよし";

Không có sự khác biệt khi bạn dùng dấu nháy đơn hay ngoặc kép để khai báo chuỗi trong JavaScript. Do đó tùy theo thói quen mà bạn có thể sử dụng cách dùng phù hợp với mình.

Lại nữa, nếu bạn quên không ghi các ký tự vào bên trong dấu nháy đơn hoặc dấu nháy kép khi khai báo chuỗi trong JavaScript, nếu các ký tự đó là chữ số thì JavaScript sẽ hiểu đó là một số. Ví dụ:

2020;
//>> một số có giá trị là 2020

Tuy nhiên nếu đó là một chuỗi chữ thì JavaScript sẽ coi đó là một biến chưa được khai báo và trả về lỗi như sau:

myname;

>>>ReferenceError: myname is not defined

Khi khai báo chuỗi trong JavaScript, chúng ta có thể đồng thời sử dụng chuỗi mới khai báo như là đối số của hàm in và xuất ra màn hình (hàm console.log()), hoặc có thể gán chuỗi ký tự đó vào một biến để sử dụng sau đó.

//sử dụng chuỗi ký tự như là đối số của hàm in 
console.log('bigcityboy');

//lưu chuỗi ký tự vào một biến
bài_hát = 'bigcityboy';
console.log(bài_hát);

Hai ví dụ đều cho ra cùng kết quả:

bigcityboy

Khai báo chuỗi chứa dấu nháy đơn ' hoặc dấu nháy kép " trong JavaScript

Tại sao lỗi SyntaxError lại xảy ra

Khi khai báo chuỗi chứa dấu nháy đơn ' hoặc dấu nháy kép " trong JavaScript thì chúng ta cần hết sức chú ý. Cả hai ký tự này đều dùng để bắt đầu và kết thúc chuỗi, việc dùng chúng cùng một chỗ có thể khiến chương trình không phần biệt được phạm vi của chuỗi, dẫn đến lỗi xảy ra như ví dụ sau:

let msg ='Kiyoshi's web';

JavaScript báo lỗi trả về:

/workspace/Main.js:1
let msg ='Kiyoshi's web';
^

SyntaxError: Unexpected identifier

Lý do xảy ra lỗi là vì, kí tự kiyoshi được đặt giữa hai dấu nháy đơn ', do đó JavaScript sẽ nhận định đây kiyoshi là một chuỗi ký tự và kết thúc khai báo chuỗi tại vị trí ký tự i.
Phần ký tự còn lại web do chỉ được đặt trong một dấu nháy đơn ' ,dẫn đến xảy ra lỗi cú pháp. JavaScript đã hiểu sai yêu cầu của chúng ta và báo lỗi mất rồi.

Cách khai báo chuỗi chứa dấu nháy đơn ‘ hoặc dấu nháy kép “ trong JavaScript

Sử dụng dấu nháy khai báo không trùng với dấu nháy có trong chuỗi

Để không xảy ra lỗi cú pháp như vậy, chúng ta lưu ý khi khai báo một chuỗi chứa dấu nháy đơn ', phải đặt các ký tự tạo chuỗi này vào giữa dấu nháy kép "".
Ngược lại, khi khai báo một chuỗi mà các ký tự tạo chuỗi có chứa dấu nháy kép ", phải đặt các ký tự này vào giữa dấu nháy đơn ' khi viết chuỗi.

Ví dụ ở trên cần phải sửa lại như sau:

let msg ="Kiyoshi's web";
let msg2 ='Học lập trình theo "phong cách Nhật Bản" ';

console.log(msg);
console.log(msg2);

Kết quả

Kiyoshi's web
Học lập trình theo "phong cách Nhật Bản"

Sử dụng Escape sequence để khai báo chuỗi trong JavaScript

Escape sequence trong JavaScript còn gọi là chuỗi thoát, được sử dụng khi chúng ta muốn dùng những ký tự đặc biệt như một ký tự thông thường trong chuỗi.

Bằng cách sử dụng Escape sequence, chúng ta sẽ biến dấu nháy đơn ' hoặc dấu nháy kép " trong chuỗi thành ký tự thông thường bằng cách thêm ký tự \ trước chúng. Do đó chương trình sẽ chỉ coi chúng là ký tự thông thường và bỏ qua công dụng dùng để khai báo chuỗi của chúng, nên lỗi cũng sẽ không xảy ra.

let msg ='Kiyoshi\'s web';
console.log(msg);
// Kiyoshi's web

let msg2 = "Học lập trình theo \"phong cách Nhật Bản\" "
console.log(msg2);
// Học lập trình theo "phong cách Nhật Bản"

Xuống dòng trong chuỗi JavaScript

Khi viết một chuỗi trong JavaScript, chúng ta không thể xuống dòng trong chuỗi đó chỉ bằng cách nhấn ENTER.

str="Con cò mày đi ăn đêm
Đậu phải cành mềm lộn cổ xuống ao"

Lỗi xảy ra:

str="Con cò mày đi ăn đêm
^^^^^^^^^^^^^^^^^^^^^

SyntaxError: Invalid or unexpected token

Để xuống dòng trong chuỗi JavaScript, chúng ta sử dụng một trong các cách sau:

Sử dụng chuỗi thoát \n để xuống dòng trong chuỗi JavaScript

Để uống dòng trong chuỗi JavaScript, chúng ta thêm chuỗi thoát \n vào cách vị trí muốn xuống dòng trong chuỗi như ví dụ sau:

str="Con cò mày đi ăn đêm\nĐậu phải cành mềm lộn cổ xuống ao";
console.log(str);

Kết quả:

Con cò mày đi ăn đêm
Đậu phải cành mềm lộn cổ xuống ao

Sử dụng dấu trích dẫn Back quote để xuống dòng trong chuỗi JavaScript

Để uống dòng trong chuỗi JavaScript, chúng ta dùng dấu trích dẫn Back quote như ví dụ sau:

str=`Con cò mày đi ăn đêm
Đậu phải cành mềm lộn cổ xuống ao
`;
console.log(str);

Kết quả:

Con cò mày đi ăn đêm
Đậu phải cành mềm lộn cổ xuống ao

Với việc sử dụng dấu trích dẫn Back quote, chúng ta có thể khai báo chuỗi nhiều dòng trong JavaScript bằng cách đặt các dòng của chuỗi giữa hai dấu trích dẫn như ví dụ trên.

Tổng kết và thực hành

Trên đây Kiyoshi đã hướng dẫn các bạn về chuỗi trong JavaScript là gìcũng như các cách khai báo chuỗi trong JavaScript rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.

Và hãy cùng tìm hiểu những kiến thức sâu hơn về JavaScript trong các bài học tiếp theo.

HOME>> >>

Profile
きよしです!笑

Tác giả : Kiyoshi (Chis Thanh)

Kiyoshi là một cựu du học sinh tại Nhật Bản. Sau khi tốt nghiệp đại học Toyama năm 2017, Kiyoshi hiện đang làm BrSE tại Tokyo, Nhật Bản.