Phương thức split

Phương thức split tách chuỗi thành một mảng dựa trên dấu phân cách được chỉ định trong tham số đầu tiên. Nếu nó không được chỉ định - toàn bộ chuỗi sẽ được trả về. Nếu nó được chỉ định là dấu nháy trống, thì mỗi ký tự của chuỗi sẽ trở thành một phần tử riêng biệt trong mảng. Tham số thứ hai tùy chọn có thể được sử dụng để chỉ định số lượng phần tử tối đa trong mảng kết quả.

Cú pháp

javascriptchuỗi.split([dấu phân cách], [số lượng phần tử tối đa]);

Ví dụ

Giả sử chúng ta có một chuỗi chứa các dấu gạch ngang. Hãy tách chuỗi này thành một mảng bằng dấu phân cách '-':

javascriptlet str = 'ab-cd-ef';
let arr = str.split('-');

console.log(arr);

Kết quả thực thi mã:

javascript['ab', 'cd', 'ef']

Ví dụ

Hãy lại tách chuỗi bằng dấu phân cách '-', tuy nhiên hãy chỉ định số lượng phần tử tối đa trong mảng kết quả bằng tham số thứ hai, ví dụ: 2. Trong trường hợp này chỉ 2 phần tử đầu tiên sẽ được đưa vào mảng:

javascriptlet str = 'ab-cd-ef';
let arr = str.split('-', 2);

console.log(arr);

Kết quả thực thi mã:

javascript['ab', 'cd']

Ví dụ

Hãy đặt mỗi ký tự của chuỗi vào một phần tử riêng biệt trong mảng:

javascriptlet str = 'abcde';
let arr = str.split('');

console.log(arr);

Kết quả thực thi mã:

javascript['a', 'b', 'c', 'd', 'e']

Ví dụ

Hãy đặt 3 ký tự đầu tiên của chuỗi vào các phần tử riêng biệt trong mảng:

javascriptlet str = 'abcde';
let arr = str.split('', 3);

console.log(arr);

Kết quả thực thi mã:

javascript['a', 'b', 'c']

Ví dụ

Hãy sử dụng split để tách một chuỗi chứa các chữ số. Lưu ý rằng kết quả sẽ là một mảng các chuỗi ký tự, chứ không phải là một mảng các số:

javascriptlet str = '12345';
let arr = str.split('');

console.log(arr);

Kết quả thực thi mã:

javascript['1', '2', '3', '4', '5']

Ví dụ . Ứng dụng

Hãy đảo ngược thứ tự các ký tự trong chuỗi. Để làm điều này, trước tiên hãy tách chuỗi thành một mảng bằng split với dấu phân cách '' (điều này sẽ đặt mỗi ký tự của chuỗi vào một phần tử riêng biệt), sau đó đảo ngược mảng này bằng reverse và sau đó nối mảng đã đảo ngược lại bằng join:

javascriptlet str = '123456789';
let arr1 = str.split('');
let arr2 = arr1.reverse();
let res = arr2.join('');

console.log(res);

Kết quả thực thi mã:

javascript'987654321'

Ví dụ . Ứng dụng

Hãy đơn giản hóa giải pháp của bài toán trước - kết hợp tất cả các lệnh thành một chuỗi:

javascriptlet str = '123456789';
let res = str.split('').reverse().join('');

console.log(res);

Kết quả thực thi mã:

javascript'987654321'

Ví dụ . Ứng dụng

Cho một chuỗi chứa các chữ số. Hãy tìm tổng của các chữ số trong chuỗi này. Để làm điều này, hãy tách chuỗi thành một mảng, sau đó duyệt qua mảng này và tính tổng của nó. Có một lưu ý: split trả về các chuỗi ký tự, vì vậy khi tính tổng chúng ta cần chuyển đổi các chuỗi số này thành số thực sự bằng Number:

javascriptlet str = '12345';
let arr = str.split('');
let sum = 0;

for (let i = 0; i < arr.length; i++) {
  sum += Number(arr[i]);
}

console.log(sum);

Kết quả thực thi mã:

javascript15

Ví dụ . Ứng dụng

Cho một số. Hãy đặt mỗi chữ số của số này vào một phần tử riêng biệt trong mảng. Có một lưu ý ở đây - split chỉ áp dụng được cho chuỗi, trong khi chúng ta có một số. Trước tiên hãy chuyển đổi số thành chuỗi bằng String, rồi sau đó áp dụng split:

javascriptlet num = 12345;
let str = String(num);
let arr = str.split('');

console.log(arr);

Kết quả thực thi mã:

javascript['1', '2', '3', '4', '5']

Xem thêm

  • phương thức join,
    nối các phần tử của mảng thành một chuỗi
  • phương thức split,
    tách chuỗi dựa trên biểu thức chính quy
  • phương thức reverse,
    đảo ngược thứ tự các phần tử trong mảng
  • thuộc tính length,
    cho phép lấy độ dài của chuỗi