15+ Javascript String Method ai cũng cần Phải biết

Ngày đăng: 11/01/2021   -    Cập nhật: 15/01/2021
Trong bài viết này, mình muốn nói về vài Phương thức thao tác với chuỗi (String method) bạn cần phải biết trong Javascript.


Đây là những phương thức chuỗi rất thường gặp trong các JS Framework và rất hữu ích khi giải quyết vấn đề và các thuật toán.



15+ Javascript String Method ai cũng cần phải biết

15+ Javascript String Method ai cũng cần phải biết


Mình đã giải quyết các thuật toán trên cả FreeCodeCamp và CodeWars trong 4 tuần qua, và mình sử dụng rất nhiều lần này các phương thức này.




Và mình nghĩ, kể cả bạn là một Lập trình viên Javascript hay Lập trình viên PHP, JAVA... Chỉ cần đụng đến JS là bạn cần phải biết đến chúng.


1. Phương thức length trong Javascript



let str = "i am a string";
console.log(str.length); //13


 

2. Phương thức split  trong Javascript



Phương thức .split() tạo ra một mảng từ một chuỗi. Bạn có thể sử dụng một chuỗi phân tách được chỉ định để xác định cách bạn phân tách chuỗi ra như thế nào.


const str = "Luke, I am your Father";
console.log(str.split());//[ 'Luke, I am your Father' ]
console.log(str.split(''));//["L", "u", "k", "e", ",", " ", "I", " ", "a", "m", " ", "y", "o", "u", "r", " ", "F", "a", "t", "h", "e", "r"]
console.log(str.split(' '));//[ 'Luke,', 'I', 'am', 'your', 'Father' ]
console.log(str.split(','));//[ 'Luke', ' I am your Father' ]


Lưu ý: Để an toàn hơn thì việc phân tách chuỗi thành các từ bằng .split(/\w/g) sẽ tốt hơn là sử dụng .split('')


Chúng ta hãy xem một cách 
mình dễ dàng giải quyết thuật toán trên CodeWars: Cho một chuỗi, viết hàm để trả về một mảng các số nguyên là độ dài của các từ trong chuỗi.


function wordsLength(str) {
  return str.split(' ') //Đầu tiên, tách chuỗi thành mảng các từ
            .map(word => word.length); //Sử dụng map() định dạng phần tử của mảng theo chiều dài với .length;
}

wordsLength('Luke, I am your father'); //[ 5, 1, 2, 4, 6 ]


3. Phương thức toUpperCase trong Javascript



Phương thức toUpperCase này chuyển toàn bộ chuỗi chữ thường thành chữ viết Hoa.


const str = 'I find your lack of faith disturbing.';
console.log(str.toUpperCase()); //I FIND YOUR LACK OF FAITH DISTURBING.


4. Phương thức toLowerCase trong Javascript



Phương thức toLowerCase ngược lại toUpperCase. Phương thức này chuyển toàn bộ chuỗi thành chữ thường.


const str = 'Help me, Obi-Wan Kenobi. You’re my only hope.';
console.log(str.toLowerCase()); //help me, obi-wan kenobi. you’re my only hope.


 

5. Phương thức includes trong Javascript



Để kiểm tra xem một chuỗi chứa các ký tự được chỉ định ta dùng Phương thức includes(). Nó sẽ trả về giá trị boolean (true hoặc false). Có thể thêm vị trí chỉ định trong chuỗi để bắt đầu tìm kiếm.


const str = 'The Force will be with you. Always.';
console.log(str.includes('Force')); //true
//Chú ý: includes Phân biệt hoa thường!
console.log(str.includes('force')); //false
//Thông thường sẽ tốt hơn khi chuyển đổi chuỗi thành chuỗi viết thường 
//Sau đó mới bắt đầu kiểm tra chuỗi bằng phương thức includes.
const newStr = str.toLowerCase();
console.log(newStr.includes('force')); //true
//Thêm vị trí chỉ định bắt đầu tìm kiếm
console.log(str.includes('w', 0)); //true
console.log(str.includes('T', 1)); //false


 

6. Phương thức startsWith trong Javascript



Kiểm tra xem một chuỗi bắt đầu bằng các ký tự được chỉ định ta dùng .startsWith(). Nó sẽ trả về giá trị boolean và có thể thêm vị trí bắt đầu tìm kiếm.


Phương thức startsWith()phân biệt Hoa thường.



const str = 'Never tell me the odds!';
console.log(str.startsWith('Never')); //true
console.log(str.startsWith('Never', 1)); //false
console.log(str.startsWith('never', 0)); //false


 

7. Phương thức endWith trong Javascript



Để kiểm tra xem một chuỗi kết thúc bằng các ký tự được chỉ định hay không ta dùng phương thức .endWith(). Nó sẽ trả về giá trị boolean và có thể thêm tham số độ dài (tùy chọn). Phương thức endWith() là phân biệt Hoa thường.


const str = 'Do. Or do not. There is no try.';
console.log(str.endsWith('try.')); //true
console.log(str.endsWith('Try.')); //false
console.log(str.endsWith('try', 30)); //true
console.log(str.endsWith('try.', 30)); //false


 

8. Phương thức indexOf  trong Javascript



Để kiểm tra sự xuất hiện đầu tiên của một giá trị được chỉ định trong một chuỗi bằng phương thức .indexOf().


Phương thức này trả về vị trí đầu tiên của giá trị tìm thấy. Nếu giá trị không nằm trong chuỗi, nó sẽ trả về -1.


Ta có thể thêm một đối số thứ hai để chỉ đị vị trí bắt đầu tìm kiếm.



const str = 'When gone am I, the last of the Jedi will you be. The Force runs strong in your family. Pass on what you have learned.';
console.log(str.indexOf('h')); //1
console.log(str.indexOf('H')); //-1
console.log(str.indexOf('h', 2)); //17
console.log(str.indexOf('J', str.length)); //-1


 

9. Phương thức lastIndexOf trong Javascript



Để kiểm tra lần xuất hiện đầu tiên của một giá trị được chỉ định trong một chuỗi với phương thức .lastIndexOf() tính từ cuối chuỗi ngược trở lại.


Giá trị được kiểm tra từ cuối ngược trở lại. Nhưng giá trị trả về thì vẫn tính theo chỉ số index.


Nếu giá trị không nằm trong chuỗi, nó sẽ trả về -1. Tham số thứ 2 là vị trí bắt đầu tìm kiếm ngược trở lại. Nếu không có, mặc định là tìm kiếm từ cuối chuỗi.



const str = 'When gone am I, the last of the Jedi will you be. The Force runs strong in your family. Pass on what you have learned.';
console.log(str.lastIndexOf('h')); //105
console.log(str.lastIndexOf('h', 100)); //97
console.log(str.lastIndexOf('.')); //117
console.log(str.lastIndexOf('.', 0)); //-1


10. Phương thức repeat  trong Javascript



Phương thức .repeat() là phương thức trả về chuỗi được lặp lại một số lần cụ thể theo tham số truyền vào.


const str = 'There’s always a bigger fish.';
console.log(str.repeat(2));//There’s always a bigger fish.There’s always a bigger fish.
//Chú ý: Số lẻ sẽ chuyển đổi thành số nguyên 5.5 -> 5
console.log(str.repeat(5.5));//There’s always a bigger fish.There’s always a bigger fish.There’s always a bigger fish.There’s always a bigger fish.There’s always a bigger fish.


 

11. Phương thức replace trong Javascript



Phương thức .replace() dùng để thay thế một mẫu (pattern) trong một chuỗi nhất định. Mẫu có thể là một chuỗi hoặc một biểu thức chính quy (regex) và thay thế có thể là một chuỗi hoặc một hàm được gọi trên mỗi kết quả khớp.


Chú ý: Nếu các thay thế hoặc mẫu là một chuỗi thì chỉ có lần xuất hiện đầu tiên được thay thế.



const string = 'Fear is the path to the dark side.';
console.log(string.replace('Fear', 'Tears')); //Tears is the path to the dark side.
console.log(string.replace(/a/gi, 'A'));//FeAr is the pAth to the dArk side.


12. Phương thức charAt  trong Javascript



Chúng ta có thể lấy một ký tự cụ thể từ một chuỗi bằng phương thức charAt() (chính xác là một đơn vị mã UTF-16).


trả về một chuỗi rỗng nếu chỉ số truyền vào nằm ngoài phạm vi!



const string = 'Fear leads to anger';
console.log(string.charAt(1));//e
console.log(string.charAt(string.length - 1));//r
console.log(string.charAt(string.length));//'' Chỉ số nằm ngoài phạm vi!
//Chú ý: Nếu không có chỉ số truyền vào thì mặc định sẽ là 0
console.log(string.charAt());//F


13. Phương thức charAtCode trong Javascript



Phương thức charAtCode lấy mã UTF-16 của chữ cái tại chỉ mục đã cho trong một chuỗi.


Phương thức này rất hữu ích với các thuật toán như ROT13 hoặc Caesar Cypher. Nếu không có chỉ số nào được cung cấp thì mặc định là 0.



const string = 'We must keep our faith in the Republic.';
console.log(string.charCodeAt(0));//87
console.log(string.charCodeAt(5));//115
//Nếu bạn muốn lấy tất cả giá trị UTF-8 của các ký tự trong chuỗi
//Tiến hành tách chuỗi để có một mảng ký tự
//Ánh xạ mảng và lấy giá trị UTF-8 bằng phương thức charCodeAt();
const utfValuesArr = string.split('').map(letter => letter.charCodeAt());
console.log(utfValuesArr);
//[87, 101, 32, 109, 117, 115, 116, 32, 107, 101, 101, 112, 32, 111, 117, 114, 32, 102, 97, 105, 116, 104, 32, 105, 110, 32, 116, 104, 101, 32, 82, 101, 112, 117, 98, 108, 105, 99, 46]


14. Phương thức String.fromCharCode() trong Javascript



Ngược lại với phương thức charAtCode ở trên, phương thức String.fromCharCode() sẽ nhận một chuỗi được tạo từ mã UTF-16.


console.log(String.fromCharCode(65));//A
console.log(String.fromCharCode(105, 106, 107));//ijk
console.log(String.fromCharCode(32));//'' empty space!


const arr = [77, 97, 121, 32, 116, 104, 101, 32, 70, 111, 114, 99, 101, 32, 66, 101, 32, 87, 105, 116, 104, 32, 89, 111, 117];
const quote = arr.map(n => String.fromCharCode(n));
console.log(quote.join('')); //May the Force Be With You


 

15. Phương thức slice trong Javascript



Phương thức slice() trong Javascript cắt lấy một phần của chuỗi, và trả về trong một chuỗi mới, mà không sửa đổi chuỗi gốc.


Phương thức slice() cần có 2 tham số.



  • Begin Index là nơi bắt đầu cắt chuỗi
  • End Index tùy chọn nơi dừng lại để cắt chuỗi.


Nếu không có End Index truyền vào, mặc định nó sẽ cắt chuỗi đến cuối chuỗi.


Chú ý: Chỉ số âm sẽ đếm ngược từ cuối chuỗi.



const string = 'I’m just a simple man trying to make my way in the universe.';
console.log(string.slice(1));//’m just a simple man trying to make my way in the universe.
console.log(string.slice(0,10));//I’m just a
console.log(string.slice(-3));//se.



> Xem thêm ngay: NỐI CHUỖI TRONG JAVASCRIPT

 

16. Phương thức substring trong Javascript



Để lấy một phần của chuỗi giữa các chỉ số bắt đầu và kết thúc, hoặc đến cuối chuỗi chúng ta sử dụng phương thức substring().


Chú ý: Bất kỳ giá trị đối số nào nhỏ hơn 0 hoặc lớn hơn stringName.length đều được xử lý như thể nó là 0 và stringName.length tương ứng. Bất kỳ giá trị đối số nào là NaN đều được xử lý như thể nó là 0.



const string = 'Darth Vader';
console.log(string.substring(0));//Darth Vader
console.log(string.substring(6));//Vader
console.log(string.substring(1,6));//arth


 

17. Phương thức trim trong Javascript



Phương thức trim() loại bỏ khoảng trắng ở hai đâu của chuỗi.


const string = '      Yoda     ';
console.log(string.trim());//Yoda


Đây chưa phải là một danh sách đầy đủ tất cả các Phương thức chuỗi trong Javascript, nhưng đây là một danh sách các phương thức mình thấy rất là quan trọng nhất khi Lập trình Web.




Để hiểu rõ hơn về Javascript và cách giải quyết vấn đề liên quan đến string, mình khuyên bạn nên thử nghĩ ra nhiều bài toán để giải quyết hoặc 'Chơi' thật nhiều với tất cả các phương thức này trên Codewars.


Mauro Bono
 
---
HỌC VIỆN ĐÀO TẠO CNTT NIIT - ICT HÀ NỘI
Học Lập trình chất lượng cao (Since 2002). Học thực tế + Tuyển dụng ngay!
Đc: Tầng 3, 25T2, N05, Nguyễn Thị Thập, Cầu Giấy, Hà Nội
SĐT: 02435574074 - 0968051561
Email: hello@niithanoi.edu.vn
Fanpage: https://facebook.com/NIIT.ICT/
 
#niit #niithanoi #niiticthanoi #hoclaptrinh #khoahoclaptrinh #hoclaptrinhjava #hoclaptrinhphp

Bình luận Facebook
Khóa học liên quan đến bài viết

Khóa học PHP Full stack [2023] cho người mới bắt đầu

96 giờ
Khóa học Lập trình PHP Full stack, phiên bản cập nhật lần thứ 8. Dạy Lập trình PHP bài bản từ Front end đến Back end + Laravel. Hướng dẫn làm 2 Dự Án Web lớn

Lập trình PHP với Laravel Framework

42 giờ
Khóa học Lập trình PHP với Laravel Framework được NIIT - ICT HÀ NỘI xây dựng nhằm hoàn thiện kỹ năng lập trình web các các bạn đã biết Lập trình Web PHP thuần.

Khóa học Java Full stack (IJFD)

104 giờ
Học lập trình Java Fullstack với khóa học được xây dựng theo lộ trình bài bản, từ JAVA CƠ BẢN đến JAVA WEB và nâng cao về JAVA FRAMEWORK như: Spring Boot, Hibernate

KHÓA HỌC ANGULAR & TYPESCRIPT (FRONT END)

48 giờ
Khóa học Angular & TypeScript (Front end) sẽ giúp bạn làm chủ được nền tảng Angular từ đó phát triển được các ứng dụng mạnh mẽ, đa nền tảng.
Mục lục
Đăng ký tư vấn
Nhân viên gọi điện tư vấn miễn phí sau khi đăng ký
Được cập nhật các ưu đãi sớm nhất
Hotline: 0383180086
Tên không được để trống
Số điện thoại không được để trống
Email không được để trống
Hãy đăng ký để nhận những thông tin mới nhất về học bổng mới nhất tại NIIT - ICT Hà Nội
top
Đóng lại Đăng ký học tại NIIT - ICT Hà Nội
6260+ học viên đã theo học tại NIIT - ICT Hà Nội và có việc làm tốt trong ngành lập trình. Nắm lấy cơ hội ngay hôm nay!
Chọn khóa học
  • KHÓA HỌC LẬP TRÌNH FRONT END VỚI REACT.JS
  • KHÓA HỌC LẬP TRÌNH PHP WEB
  • Khóa học PHP Full stack [2023] cho người mới bắt đầu
  • Khóa học BIG DATA với Hadoop và Spark
  • Khóa học Lập trình Android tại Hà Nội
  • [Tuyển sinh 2023] Lập trình viên Quốc tế DigiNxt
  • Khóa học Tiền lương & Phúc lợi (C&B Excel) tại Hà Nội
  • LẬP TRÌNH GAME
    • Khóa học Lập trình Game Unity
  • LẬP TRÌNH WEB FRONT END
    • KHÓA HỌC PYTHON HƯỚNG ĐỐI TƯỢNG
    • KHÓA HỌC ANGULAR & TYPESCRIPT (FRONT END)
  • LẬP TRÌNH WEB BACK END
    • LẬP TRÌNH JAVA WEB VỚI FRAME WORK
    • Lập trình Web với Django
    • Lập trình PHP với Laravel Framework
  • CHƯƠNG TRÌNH ĐÀO TẠO ỨNG DỤNG CÔNG NGHỆ
    • Khóa học Tiền lương & Phúc lợi (C&B Excel) tại TP HCM
  • LẬP TRÌNH WEB FULL STACK
    • Khóa học Java Full stack (IJFD)
  • LẬP TRÌNH MOBILE
    • FRONT-END VỚI REACTJS VÀ REACT NATIVE
    • Lập trình Android Nâng cao
  • ĐÀO TẠO CHO DOANH NGHIỆP
    • KHÓA HỌC BUSINESS ANALYSIC TỪ CƠ BẢN ĐẾN NÂNG CAO 2023
    • Khóa học Magento: Làm chủ CMS TMĐT lớn nhất
    • Khóa học IOT: Xây dựng Sản phẩm IOT với Raspberry Pi
    • Khóa học Automation Testing Chuyên nghiệp
  • KHÓA HỌC DỰ ÁN
    • Học sử dụng bộ Office: Word, Excel, Power Point, Mail chuyên nghiệp
  • KHÓA HỌC KHÁC
    • VBA Excel Toàn Tập (Cơ Bản - Nâng Cao)
    • VBA Excel Nâng cao
    • Khóa học JMeter: Performance Testing
    • Khóa học Tester đạt chuẩn Quốc tế ISTQB Foundation Level
    • Khoá Học Tester đạt chuẩn quốc tế ISTQB Advanced Level
Bạn chưa chọn khóa học cần đăng ký
Tên không được để trống
Số điện thoại không được để trống
Email không được để trống
Đăng ký học thành công!
Cảm ơn bạn đã đăng ký học tại NIIT - ICT HÀ NỘI!