Ép kiểu trong C++ là việc gán giá trị của một biến có kiểu dữ liệu này tới biến khác có kiểu dữ liệu khác. Cú pháp: ( type) value; Ví dụ: float c = 35.8f; int b = (int) c + 1; Trong ví dụ trên, đầu tiên giá trị dấu phảy động c được đổi thành giá trị nguyên 35. Sau đó nó được cộng với 1 và kết quả là giá trị 36 được lưu vào b. SQLite sử dụng một hệ thống kiểu động. Trong SQLite, kiểu dữ liệu là một giá trị được liên kết với chính giá trị đó, không liên kết với Container. Lớp lưu trữ trong SQLite. Mỗi giá trị được lưu giữ trong một SQLite Database có một trong các lớp lưu trữ (Storage Class) sau: Với kiểu dáng hiện đại, động cơ mạnh mẽ, Hurom Premium mang lại một trải nghiệm ép trái cây vượt trội Hurom - Món quà vô giá của thời gian Phiên bản mới đem lại sự tiện lợi hơn bao giờ hết, cho bạn đắm chìm trong ly nước ép Hurom mỗi ngày. Với các chức năng cải Mặc dù do ép buộc kiểu, JavaScript sẽ tự động chuyển đổi nhiều giá trị, cách tốt nhất là chuyển đổi thủ công các giá trị giữa các kiểu để đạt được kết quả mong đợi.. Hướng dẫn này sẽ hướng dẫn bạn chuyển đổi các kiểu dữ liệu nguyên thủy của JavaScript, bao gồm số, chuỗi và Boolean. Format kiểu dữ liệu money(tiền) trong asp.net, c# Lượt xem: 8,169 - Xem Bài Viết Cùng Chủ Đề Công ty lập trình phần mềm Vinasoft cho doanh nghiệp 25/02/2020 cash. Trong bài này mình sẽ hướng dẫn các bạn cách ép kiểu dữ liệu trong Javascript, bằng cách sủ dung những hàm kép kiểu có sẵn trong Javascript là bạn có thể chuyển đổi viết này được đăng tại không được copy dưới mọi hình thức. Việc ép kiểu dữ liệu rất quan trọng, nó giúp các phép toán trên các biến chuẩn xác hơn. Ví dụ khi bạn cộng hai số thì nếu đều là kiểu number thì kết quả sẽ chuẩn hơn là bạn cộng một chuỗi với một number. Sau đây là chi tiết. 1. Lưu ý khi ép kiểu dữ liệu trong Javascript Trong Javascript có 5 kiểu dữ liệu đơn giản gồm string / number / boolean / object / function. 6 kiểu dữ liệu Object Object / Date / Array / String / Number/ Boolean. 2 kiểu dữ liệu không chứa dữ liệu nào cả ull / undefined. Bạn nên nhớ rằng các kiểu dữ liệu trong Javascript bản chất đều là những Object, vì vậy khi muốn sử dụng một thuộc tính thì phải chắc chắn rằng bạn đã sử dụng đúng thuộc tính của object viết này được đăng tại [free tuts .net] Ví dụ Trong object Number có phương thức toString dùng để chuyển đổi kiểu Number sang String. Nhưng nếu bạn sử dụng phương thức này bên một String object thì sẽ bị báo lỗi không tồn tại. Dùng Type of để kiểm tra kiểu dữ liệu Để kiểm tra kiểu dữ liệu của một biến thì ta có thể dùng từ khóa type of. typeof "Cuong" // Returns "string" typeof // Returns "number" typeof NaN // Returns "number" typeof false // Returns "boolean" typeof [1,2,3,4] // Returns "object" typeof {name'Cuong', age34} // Returns "object" typeof new Date // Returns "object" typeof function {} // Returns "function" typeof myCar // Returns "undefined" * typeof null // Returns "object" Kết quả trả về là tên của đối tượng kiểu dữ liệu mà biến đang thuộc về. Đối với các giá trị thông thường như chuỗi, số thì dễ hiểu đó là String và Number. Nhưng đối với các kiểu đặc biệt thì bạn cần chú ý như sau NaN là Number Array, Object là Object Ngày tháng Date là Object Null là Object Biến chưa gán dữ liệu là undefined. Biến chưa được khai báo cũng là undefined. Dùng constructor để kiểm tra kiểu dữ liệu Mỗi đối tượng trong Javascript sẽ có một thuộc tính constructor, nó là tên hàm khởi tạo nên bạn có thể tận dụng để kiểm tra kiểu dữ liệu của biến trước khi ép kiểu Javascript. "Cuong".constructor // Returns function String {[native code]} // Returns function Number {[native code]} // Returns function Boolean {[native code]} [1,2,3,4].constructor // Returns function Array {[native code]} {name'Cuong',age34}.constructor // Returns function Object {[native code]} new Date.constructor // Returns function Date {[native code]} function {}.constructor // Returns function Function{[native code]} 2. Cách ép kiểu dữ liệu trong Javascript Mình sẽ chia ra từng trường hợp ép kiểu trong Javascript để các bạn dễ theo dõi nhé. Ép kiểu INT sang kiểu String Để ép dữ liệu sang kiểu String thì bạn sử dụng hàm global String. Stringx // Trả về giá trị x kiểu String String123 // Trả về giá trị string "123" String100 + 23 // Trả về giá trị string là "123" Ngoài ra, bạn cũng có thể sử dụng phương thức toString để chuyển đổi sang kiểu string. Như ví dụ sau cho kết quả tương đương. 123.toString 100 + 23.toString Ép kiểu Date sang String Tương tự, bạn cũng có thể sử dụng hàm String hoặc phương thức toString. StringDate // Trả về "Thu Jul 17 2021 153819 GMT+0200 W. Europe Daylight Time" Dùng toString cũng cho kết quả tương đương. Date.toString // Trả về "Thu Jul 17 2014 153819 GMT+0200 W. Europe Daylight Time" Ép kiểu String sang Number Ta sử dụng hàm Number như sau Number" // returns Number" " // returns 0 Number"" // returns 0 Number"99 88" // returns NaN Hoặc có thể sử dụng hai hàm parseInt => Chuyển sang kiểu integer. parseFloat => Chuyển sang kiểu float có dấu phẩy động. Dùng toán tử + đặt trước chuỗi String cũng giúp ta chuyển từ String sang Number. var y = "5"; // y là string var x = + y; // x là number Ví dụ dưới đâ trả về NaN bởi vì bên trong chuỗi không phải là các ký tự số. var y = "Cuong"; // y là string var x = + y; // x là number NaN Ép kiểu Date sang Number Đối với đối tượng Date thì đơn vị number của nó là milisecond. Vì vậy khi bạn ép từ Date sang Number thì nó sẽ chuyển ngày sang milisecond. d = new Date; Numberd // Trả về 1404568027739 Hoặc sử dụng phương thức getTime có sẵn trong đối tượng Date cũng cho kết quả tương đương. d = new Date; // returns 1404568027739 Ép sang kiểu Boolean Chúng ta có hai cách, đầu tiên là sử dụng hàm Boolean. const number = 100; Booleannumber; // true Cách thứ hai là sử dụng hai lần toán tử phủ định !. const number = 100; !!number; // true 3. Bảng chuyển đổi / ép kiểu dữ liệu trong Javascript Dưới đây là bảng chuyển đổi giữa các kiểu dữ liệu với nhau. Bạn hãy tham khảo để biết từng trường hợp xảy ra khi sử dụng nhé. Giá trị Ép sang Number Ép sang String Ép sang Boolean false 0 "false" false true 1 "true" true 0 0 "0" false 1 1 "1" true "0" 0 "0" true "000" 0 "000" true "1" 1 "1" true NaN NaN "NaN" false Infinity Infinity "Infinity" true -Infinity -Infinity "-Infinity" true "" 0 "" false "20" 20 "20" true "twenty" NaN "twenty" true [ ] 0 "" true [20] 20 "20" true [10,20] NaN "10,20" true ["twenty"] NaN "twenty" true ["ten","twenty"] NaN "ten,twenty" true function{} NaN "function{}" true { } NaN "[object Object]" true null 0 "null" false undefined NaN "undefined" false Bài viết đăng tại dẫn cách chuyển số thành chuỗi trong JavaScript, hay còn gọi là ép kiểu string trong Javascript. Bạn sẽ học được cách sử dụng phương thức trong JavaScript để chuyển các số như số nguyên hay số thực thành chữ, cũng như các điểm cần chú ý khi sử dụng phương thức toString sau bài học số thành chuỗi trong JavaScript phương thức toStringtoString là một phương thức của đối tượng Number trong JavaScript, có tác dụng lấy chuỗi đại diện của một số với cơ số được chỉ định ví dụ như cơ số 2, cơ số 10 Với cùng một số thì phương thức toString sẽ cho ra các kết quả là các chuỗi khác nhau, tùy thuộc vào cơ số được chuyển số thành chuỗi, hay còn gọi là ép kiểu string trong Javascript, chúng ta dùng phương thức toString với cú pháp sau đây [cơ số];Trong đó number là số cần chuyển thành chuỗi trong JavaScript. Số này sẽ được chuyển sang các dạng chữ khác nhau tùy thuộc vào cơ số chỉ bạn muốn sử dụng cơ số 2, hãy chỉ định cơ số là 2, nếu muốn sử dụng cơ số 10, hãy chỉ định cơ số là 10, nếu muốn sử dụng cơ số 16, hãy chỉ định cơ số là 16. Cơ số có thể chỉ định là từ 2 đến 36 mà dụlet num = 88;let num_decimal = let num_bi = let num_hex = Lại nữa, cơ số có thể được lược bỏ và nếu lược bỏ cơ số khi sử dụng phương thức toString thì JavaScript sẽ sử dụng cơ số mặc định là 10 . Ví dụlet num = 88;let num_decimal = Chuyển số nguyên thành chuỗi trong JavaScriptChúng ta chỉ định số nguyên khi sử dụng phương thức toString để chuyển số nguyên thành chuỗi trong dụ cụ thể, chúng ta sẽ chuyển số nguyên dương 88 thành chuỗi trong các cơ số khác nhau như saulet num = 88; tự, chúng ta cũng chuyển số nguyên âm thành chuỗi trong JavaScript như saulet num = -78; số thực thành chuỗi trong JavaScriptNgoài số nguyên ra thì chúng ta cũng có thể chuyển các số không phải là số nguyên như số thực thành chuỗi trong dụ cụ thể, chúng ta sẽ chuyển số thực thành chuỗi trong các cơ số khác nhau như saulet num = ví dụ khác với số thực âm let num = ý khi sử dụng phương thức toString để chuyển số thành chuỗi trong JavaScriptPhương thức toString rất tiện dụng khi chúng ta muốn chuyển số thành chuỗi trong JavaScript. Tuy nhiên khi sử dụng phương thức này, chúng ta cần phải lưu ý 2 điểm sau đâyLưu ý khi sử dụng toString trực tiếp với thường chúng ta sẽ gán số vào biến, sau đó sử dụng phương thức toString với biến này, như Kiyoshi đã hướng dẫn ở trường hợp bạn muốn sử dụng trực tiếp phương thức này với số mà không thông qua biến, hãy nhớ là phải ghi số vào giữa cặp dấu ngoặc, hoặc là thêm dấu cách vào trước số, rồi mới dùng số này với toString.Ví dụ, cách sử dụng trực tiếp toString với số sau đây sẽ là sai, dẫn đến lỗi trả vềnum = = ^^^>>>SyntaxError Invalid or unexpected tokenThay vào đó, chúng ta cần phải viết số vào giữa cặp dấu ngoặc như saunum = 88.toString2; Hoặc là thêm dấu cách vào giữa số đó như saunum = 88 .toString2; Phạm vi cơ số có thể sử dụng trong toString là từ 2 đến 36Khi sử dụng phương thức toString để chuyển số thành chuỗi trong JavaScript, chúng ta chỉ có thể sử dụng các cơ số trong phạm vi từ 2 đến 36 mà như chỉ định cơ số nằm ngoài khoảng này, lỗi RangeError sẽ bị trả về như sau88.toString40;>>>RangeError toString radix argument must be between 2 and 3688.toString1;>>>RangeError toString radix argument must be between 2 and 36Tổng kếtTrên đây Kiyoshi đã hướng dẫn bạn cách chuyển số thành 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 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 Link chia sẻ và cùng lan tỏa kiến thức lập trình Nhật Bản tại Việt Nam!HOME › học javascript - lập trình javascript cơ bản>>03. số trong javascriptBài sauNối chuỗi trong JavaScript concat, toán tử cộngBài tiếpTìm ký tự trong chuỗi JavaScript indexOf, lastIndexOf Định nghĩa hàm prompt trong JavaScriptCú pháp hàm prompt trong JavaScriptVí dụ về hàm prompt trong JavaScriptKết luận Bài viết này sẽ hướng dẫn bạn cách sử dụng hàm prompt trong JavaScript. Trong thế giới web, sẽ có rất nhiều lúc bạn cần lấy thông tin input từ người dùng để thực hiện các hành động khác. Hãy lấy ví dụ đơn giản hoặc tham khảo ví dụ sau đây. Nếu bạn muốn tính EMI Equated monthly installment – Trả góp hàng tháng Đây là một khoản thanh toán cố định mà người đi vay phải trả cho người cho vay vào một ngày cụ thể mỗi tháng theo lịch dựa trên thời hạn vay của người dùng đó. Bạn sẽ cần người dùng nhập các input mà bạn muốn để máy tính áp dụng vào công thức và tính toán. Với JavaScript có một cách siêu nhanh mà lại dễ, đó là sử dụng hàm prompt trong JavaScript. >> Xem ngay Tài liệu Java Core giúp bạn “Nâng Cấp” kỹ năng lập trình Hàm promt trong JavaScript được sử dụng để hiển thị hộp thoại thông báo nhắc người dùng nhập vào dữ liệu dưới dạng văn bản. Khi hộp thoại thông báo hiện lên, nó sẽ đợi cho đến khi người dùng gửi văn bản đó hoặc từ chối nhập dữ liệu và huỷ hộp thoại. Lúc đó, hộp thoại thông báo sẽ bị đóng. Trong một số trường hợp, ví dụ khi người dùng chuyển đổi các tab, trình duyệt có thể không thực sự hiển thị hộp thoại hoặc có thể không đợi người dùng gửi văn bản hoặc hủy hộp thoại. Hộp thoại thông báo này không chứa bất cứ HTML hay CSS nào, nó hiển thị như thế nào phụ thuộc vào hệ điều hành và trình duyệt người dùng đang sử dụng. Nội dung thông báo tới người dùng thường là các câu hỏi để lấy dữ liệu từ người dùng như “Bạn tên là gì?”, “Bạn bao nhiêu tuổi?”, “Bạn học trường gì?”,… Cú pháp hàm prompt trong JavaScript Cú pháp default;Code language JavaScript javascript Bạn cũng có thể thay thế bằng prompt, vì khi bỏ tiền tố window đi thì JavaScript vẫn hiểu rằng bạn đang muốn hiển thị hộp thoại thông báo. promptmessage, default; promptmessage; prompt;Code language JavaScript javascript Trong đó, message là một chuỗi chứa thông tin mà bạn muốn hiển thị cho người dùng, default là một chuỗi chứa giá trị mặc định được hiển thị trong trường nhập văn bản. Lưu ý rằng trong Internet Explorer 7 và 8, nếu bạn không cung cấp tham số này, thì chuỗi “undefined” là giá trị mặc định. Và 2 tham số này KHÔNG BẮT BUỘC. Hàm prompt trong JavaScript trả về một chuỗi văn bản do người dùng nhập hoặc null nếu họ không nhập. Ví dụ Hiển thị một thông báo prompt"Bạn thích con vật gì nhất?";Code language JavaScript javascript Rất đơn giản phải không nào! Ví dụ về hàm prompt trong JavaScript Đầu tiên, chúng ta sẽ ứng dụng 3 dòng lệnh về hàm prompt trong JavaScript đã được định nghĩa trong phần trước nhé! Ví dụ 1 Sử dụng cả 2 tham số message và default // promptmessage, default; prompt"Bao giờ mới giàu đây?", "10 năm nữa";Code language JavaScript javascript Ví dụ 2 Sử dụng tham số message // promptmessage; prompt"Bao giờ mới giàu đây?";Code language JavaScript javascript Ví dụ 3 Không sử dụng bất cứ tham số nào // prompt; prompt;Code language JavaScript javascript Qua 3 ví dụ trên, ta chỉ cần lưu ý, với tham số default, nó sẽ là giá trị mặc định và thay đổi khi người dùng thay đổi văn bản. Còn tham số message, nếu có sẽ giúp người dùng hiểu được bạn đang muốn làm gì. Tiếp theo là ví dụ về phần văn bản sau khi người dùng gửi văn bản hoặc huỷ hộp thoại. Ví dụ 4 Gửi văn bản hoặc huỷ hộp thoại Trong ví dụ này, người dùng được yêu cầu nhập tên của mình vào hộp thoại, mặc định là “Harry Potter”. Nếu người dùng để trống tên hoặc huỷ hộp thoại, dòng chữ “Buồn quá, bạn không muốn nhập tên!” sẽ hiển thị. Ngược lại sẽ là lời chào “Xin chào” cùng với tên của bạn. let person = prompt"Mời bạn nhập tên của mình", "Harry Potter"; let text; if person == null person == "" { text = "Buồn quá, bạn không muốn nhập tên!"; } else { text = "Xin chào " + person + "!"; } language JavaScript javascript Result Bạn hãy thử các trường hợp mình đã nêu ở trên để kiểm chứng cách hoạt động của hàm prompt trong JavaScript nhé! Ví dụ 5 Sử dụng hàm prompt cho nhiều dữ liệu Mỗi lần chạy, hàm prompt chỉ có thể lấy duy nhất 1 chuỗi văn bản. Vì vậy, nếu bạn muốn lấy nhiều dữ liệu, bạn phải hiển thị thông báo nhiều lần để yêu cầu người dùng nhập dữ liệu. let diemToan = prompt"Mời nhập điểm Toán"; let diemVan = prompt"Mời nhập điểm Văn"; let diemAnh = prompt"Mời nhập điểm Anh"; // Ép kiểu từ String sang Number let diemTrungBinh = NumberdiemToan + NumberdiemVan + NumberdiemAnh / 3; // Lấy chữ số thập phân đầu tiên sau dấu phẩy language JavaScript javascript Trong ví dụ này, chúng ta sẽ tính điểm trung bình dựa trên điểm 3 môn Toán, Văn, Anh. Kết quả sẽ tính đến chữ số thập phân đầu tiên sau dấu phẩy. Vì giá trị trả về của hàm prompt là một chuỗi nên để tính toán được, bạn cần chuyển đổi kiểu dữ liệu từ chuỗi sang số String sang Number. Nếu không, kết quả sẽ trả về NaN Not a Number. Result Xem thêm về Ép kiểu trong JavaScript tại đây! Kết luận Hàm prompt trong JavaScript sẽ hiển thi hộp thoại thông báo khi muốn lấy thông tin input từ người dùng để thực hiện các hành động khác. Chắc chắn bạn sẽ sử dụng hàm này nhiều trong quá trình học. Vì vậy, hãy ghi nhớ các cách dùng và trường hợp sử Cảm ơn bạn đã đọc! Các bạn có thể tham khảo các bài viết hay về JavaScript tại đây. Hãy tham gia nhóm Học lập trình để thảo luận thêm về các vấn đề cùng quan tâm. TỔNG HỢP TÀI LIỆU HỌC LẬP TRÌNH CƠ BẢN CHO NGƯỜI MỚI BẮT ĐẦUKHOÁ HỌC BOOTCAMP JAVA/PHP/.NET TRỞ THÀNH LẬP TRÌNH VIÊN TRONG 5-6 THÁNG 1. Tại sao phải sử xử lý chuỗi? Các chuỗi mà ta phải xử lý không hề đơn giản một chút nào. Nó có thể đơn giản cũng có thể phức tạp mà ta cần phải sử lý cẩn thận nếu không muốn gặp vấn đề gì. Bài trước thì mình đã nói về chuỗi và các bạn cũng đã hiểu được phần nào về chuỗi và cấu tạo của nó rồi. Và bài này mình sẽ nói sâu thêm về chuỗi cũng như là để các bạn nắm được việc xử lý chuỗi. Một chuỗi sẽ có phương thức và thuộc tính, với việt truy cập vào các phương thức và thuộc tính của chuỗi, ta có thể đảm bảo những công việc như đếm số lượng ký tự chuỗi, chuyển toàn bộ ký tự chuỗi về dạng chữ in hoa, in thường, trích xuất chuỗi con bên trong chuỗi,… Tuy nhiên, để sử dụng được các phương thức và thuộc tính này thì trước hết bạn cần phải hiểu rõ khái niệm chỉ số của ký tự trong chuỗi và hãy xem lại ở bài trước nhé. Các giá trị nguyên thủy primitive values như “Thành Nguyễn” , không thể có thuộc tính hay phương thức vì nó không phải là đối tượng. Nhưng với JavaScript, các phương thức và thuộc tính cũng có sẵn cho các giá trị nguyên thủy, vì JavaScript xử lý các giá trị nguyên thủy như các đối tượng khi thực thi các phương thức và thuộc tính. Để đếm số lượng ký tự của một chuỗi, ta truy cập vào thuộc tính length của chuỗi đó. Ví dụ var text = "Tai lieu hoc JavaScript"; var a = //Biến a sẽ có giá trị là 23 var b = "JavaScript".length; //Biến b sẽ có giá trị là 10 3. Cách nối chuỗi trong JavaScript Để nối chuỗi string trong JS thì chúng ta sử dụng dấu + để gép hai chuỗi hoặc biến kiểu String Object lại với nhau. Ví dụ ta sẽ ghép 2 chuỗi lại với nhau rồi bán vào một biến bất kỳ var LT = "chào mừng bạn" + "đến với // hoặc một cách khác var LT1 = "chào mừng bạn"; var LT2 = "đến với // Nối hai chuỗi var LT = LT1 + LT2; 4. Xử lý chuỗi trên nhiều dòng trong JavaScript Khi bạn muốn Enter xuống hàng một chuỗi trong Javascript thì bắt buộc phải sử dụng dấu + để nối chuỗi, nếu không sẽ bị lỗi cú pháp. Ví dụ dùng dấu + để nối chuỗi // Đúng var LT = "Chào mừng bạn đến với" + " // Sai var LT = "Chào mừng bạn đến với Nếu bạn muốn viết gọn hơn thì sử dụng dấu \ để báo cho trình duyệt biết là có xuống hàng. Ví dụ dùng ký tự \ để khai báo chuỗi trên nhiều dòng var LT = "Chào mừng bạn đến với \ // hoặc cũng có thể sử dụng dấu '' 5. Ép chuỗi trong JavaScript Nếu bạn muốn ép một giá trị nào đó sang kiểu chuỗi thì có thể sử dụng cú pháp Ví dụ // Trước khi chuyển đổi var number = 12; alerttypeof number; // Sau khi chuyển đổi number = alerttypeof number; Từ khóa typeof var sẽ trả về kiểu dữ liệu của biến vars. Ngoài cách trên thì ta có thể sử dụng đối tượng chuỗi để tạo hoặc ép chuỗi nhưng ta sẽ học ở phần đối tượng sau. 6. Cắt chuỗi trong JavaScript Để cắt một chuỗi trong Js ta có thể sử dụng một trong 3 hàm sau slicestart, end substringstart, end substrstart, length Chú ý Mình muốn lưu ý luôn với các bạn rằng trước khi cắt chuỗi thì tất cả các vị trí chuỗi đều bắt đầu từ 0 nên đừng nhầm lẫn nhé! Hàm Slice Hàm slice có 2 tham số truyền vào start vị trí bắt đầu end vị trí kết thúc Ví dụ var string = "Welcome to cần lấy là " + 23; Nếu tham số truyền vào là số âm thì nó sẽ tính ngược lại, nghĩa là nó sẽ đếm từ cuối lên. Ví dụ var string = "Welcome to cần lấy là " + 23; Nếu ta chỉ truyền vào tham số đầu tiên thì Js sẽ tự hiểu rằng vị trí end sẽ là vị trí cuối cùng của chuỗi mà ta lấy Ví dụ var string = "Welcome to cần lấy là " + Hàm substring Hàm substring cũng tương tự như hàm silce chỉ khác rằng tham số truyền vào hàm này luôn phải lớn hơn 0 Ví dụ var string = "Welcome to cần lấy là " + 23; Hàm substr Hàm substr có hai tham số là start và length, trong đó start là vị trí bắt đầu và length là số ký tự muốn lấy bắt đầu từ vị trí start . Nếu bạn truyền tham số start là số âm thì nó sẽ tính từ cuối trở lên, còn tham số length phải luôn luôn là số dương. Ví dụ var string = "Welcome to cần lấy là " + 12; 7. Chuyển đổi chuỗi sang chữ hoa và chữ thường trong JavaScript Ta có thể chuyển đổi chuỗi thành chữ hoa với toUpperCase Ví dụ let text1 = "Hello World!"; let text2 = Và một chuỗi được chuyển thành chữ thường với toLowerCase Ví dụ let text1 = "Hello World!"; // chuỗi let text2 = // text2 được chuyển đổi text1 thành chữ thường 8. Phương thức concat trong JavaScript Phương thức concat là phương thức mà ta dùng để kết hợp 2 hay nhiều chuỗi lại với nhau. Ví dụ var text1 = "Lập Trình"; var text2 = "Từ Đầu!"; var text3 = ", text2; Phương thức concat có thể được sử dụng thay thế cho toán tử cộng. Hai dòng dưới đây có chức năng tương đương var text = "Lập Trình" + " " + "Từ Đầu!"; var text = "Lập Trình".concat" ", "Từ !"; Chú ý Tất cả các phương thức của chuỗi đều trả về một chuỗi mới mà không làm ảnh hưởng đến chuỗi ban đầu. Thông thường, các toán tử và các hàm sẽ tự động chuyển đổi kiểu của giá trị về đúng. Ví dụ như alert sẽ tự động chuyển bất kỳ kiểu dữ liệu nào về string để hiển thị chúng, các toán tử toán học sẽ tự động chuyển về kiểu number để thực hiện tính toán. Tuy nhiên trong nhiều trường hợp chúng ta muốn chuyển đổi kiểu về kiểu dữ liệu mà chúng ta mong muốn. Trong bài này chúng ta sẽ tìm hiểu về các cách thay đổi kiểu dữ liệu. String Conversion 1. String Khi chúng ta cần chuyển đổi kiểu của một value sang string chúng ta có thể sử dụng String var x = 15; var y = Stringx; alerttypeofy; // string //Hoặc khi ta có 1 mảng var a = [1, 2, 3]; var b = Stringa; alertb; // 1,2,3 alerttypeofb; // string //Tuy nhiên khi ta áp dụng với Object var obj = {1 'a', 2 'b'}; var objToString = Stringobj; alertobjToString; // [object Object] 2. toString Ngoài việc sử dụng String thì chúng ta có vẻ quen thuộc hơn với toString, nó cũng sẽ ép kiểu các giá trị về string var x = 15; var y = alerttypeofy; // string //Hoặc khi ta có 1 mảng var a = [1, 2, 3]; var b = alertb; // 1,2,3 alerttypeofb; // string //Và áp dụng với Object cũng chưa ra được kq mong muốn var obj = {1 'a', 2 'b'}; var objToString = alertobjToString; // [object Object] 3. Sử dụng toán tử cộng "+" Khi sử dụng toán tử, chúng ta đặc biệt phải lưu ý đến toán tử + khi toán hạng có kiểu string. Khi chúng ta sử dụng toán tử + mà một trong các toán hạng có kiểu là string thì Javascript sẽ cố gắng ép kiểu của toán hạng còn lại về kiểu string. Hãy cùng xem ví dụ dưới đây // Trong trường hợp có 2 toán hạng, 1 trong 2 toán hạng có kiểu là "string" // thì JS sẽ ép kiểu của toán hạng còn lại về "string" alert"1" + 1; // "11" alert1 + "1"; // "11" // Trong trường hợp có nhiều hơn 2 toán hạng và 1 trong các toán hạng có kiểu là "string" // thì tùy vào vị trí của toán hạng kiểu "string" mà ta có các kq khác nhau. alert1 + 2 + "string" + 3 + 4; // "3string34" alert1 + "string" + 2 + 3 + 4; // "1string234" alert1 + 2 + 3 + 4 + "string"; // "10string" // Chúng ta sẽ chuyển đổi kiểu như thế nào? var x = 15; var y = "" + 15; alerty; // "15" Numeric Conversion 1. Number Khi chúng ta muốn chuyển đổi từ một giá trị khác sang giá trị kiểu number, chúng ta có thể sử dụng Number var x = "123"; var y = Numberx; alerty; // 123 // Hoặc với các giá trị true/false var a = Numbertrue; alerta; // 1 // còn Numberfalse, Number'', Number[] hoặc Numbernull sẽ trả về 0 // Khi chúng ta truyền vào Number một string không phải chứa toàn là số // thì sẽ trả về NaN Not a Number var string = "string"; var toNumber = Numberstring; alerttoNumber; // NaN // Ngoài ra khi truyền vào Object, undefined //hoặc array có length > 2 hoặc có 1 giá trị nhưng không phải number hoặc string là số thì cũng trả về NaN 2. parseInt/parseFloat parseInt sẽ chuyển đổi kiểu của một string về kiểu number nhưng ở dạng interger số nguyên parseInt sẽ trả về các số nằm đầu tiên trong giá trị string đó, nếu chuỗi đó không thể chuyển thành number thì nó sẽ trả về NaN. Cùng xét ví dụ sau var a = parseInttrue; // NaN var b = parseInt" // 10 var c = parseInt" // 10 var d = parseInt"34 45 66"; // 34 var e = parseInt" 60 "; // 60 var f = parseInt"40 years"; // 40 var g = parseInt"He was 40"; // NaN parseFloat sẽ chuyển đổi kiểu của một string về kiểu number nhưng ở dạng float số thực parseFloat cũng gần giống như parseInt. Cùng xét ví dụ sau var a = parseInttrue; // NaN var a = parseFloat"10"; // 10 var b = parseFloat" // 10 var c = parseFloat" // var d = parseFloat"34 45 66"; // 34 var e = parseFloat" 60 "; // 60 var f = parseFloat"40 years"; // 40 var g = parseFloat"He was 40"; // NaN 3. Sử dụng toán tử "+" Tại sao vừa rồi ở trên chúng ta nói đến việc sử dụng + để chuyển kiểu về string mà dưới đây chúng ta lại dùng nó để chuyển kiểu về number. Chúng ta cùng xem ví dụ dưới đây var x = "15"; var y = +x; alerty; // 15 alerttypeofy; // number Khi chúng ta thêm + và trước giá trị thì nó sẽ chuyển đổi về kiểu number không giống như khi chúng ta sử dụng + trong một phép toán. Và nó cũng trả về các kết quả giống như sử dụng Number trong các trường hợp cụ thể var a = +false; // 0 === +"", +[], +null var b = +true; // 1 var c = +"123"; // 123 var d = +"abc"; // NaN var e = +[1]; // 1 === +["1"] var f = +["a"]; // NaN var g = +{}; // NaN Ngoài ra, khi chúng ta tính toán sử dụng các toán tử -, *, /, %, ** thì Javascript cũng sẽ cố gắng chuyển đổi kiểu các toàn hạng về number. Boolean Conversion Thường khi viết code Javascript chúng ta ít khi ép kiểu các giá trị về kiểu Boolean mà thường để tự Javascript ngầm ép kiểu, ví dụ như sau var x = "string"; ifx { alerttrue; } else { alertfalse; } //KQ true Ở đoạn code trên, chúng ta có thể thấy Javascript đã tự động ngầm ép kiểu của x trong if về Boolean để chạy câu lệnh if. Tuy nhiên, nhiều trường hợp chúng ta muốn lấy giá trị kiểu Boolean của nó để có thể strict equal hoặc cần hàm trả về true hoặc false thì chúng ta sẽ sử dụng Boolean var x = Boolean1; alertx; // true Các giá trị khi ép kiểu sang Boolean trả về false 0, '', false, null, undefined, NaN. Các giá trị này cũng được gọi là các falsy value trong Javascript. Ngoài các giá trị ở trên thì các giá trị còn lại đều trả về true. Object Conversion Như chúng ta đã tìm hiểu ở trên thì khi chuyển đổi kiểu từ object sang các kiểu khác như string [object Object] number NaN boolean true Vậy chúng ta phải làm thế nào để chuyển đổi kiểu từ object sang các kiểu dữ liệu nguyên thủy theo cách mà chúng ta mong muốn nhất. Khi chúng ta ép kiểu một object về string hoặc number thì Javascript sẽ cố gắng tìm và gọi 3 object methods như sau Gọi obj[ - với key tượng trưng là nếu method này tồn tại. Dựa vào hint , nếu là string thì nó sẽ cố gọi đến method trước và sau nếu không tồn tại. Nếu hint là number thì nó sẽ cố gọi đến trước và sau. Hãy cùng xét ví dụ var obj = { name 'John Doe', age 53, [ { return hint == "string" ? `${ } } alertStringobj; // "John Doe" alertNumberobj; // 53 sẽ cho phép chúng ta quy định giá trị trả về thông qua hint. toString/valueOf Methods toString và valueOf là 2 method cũ, nếu không tìm thấy thì Javascript sẽ cố gắng gọi đến chúng theo thứ tự toString rồi đến valueOf nếu hint là string valueOf rồi đên toString nếu hint khác string Theo mặc định, đối với một object đơn giản toString method trả về một string "[object Object]". valueOf method trả về chính object đó. var user = {name "John"}; alertuser; // [object Object] alert === user; // true Vậy chúng ta muốn giá trị trả về là giá trị mà chúng ta mong muốn giống như sử dụng thì chúng ta sẽ cần sử dụng kết hợp toString và valueOf như sau var obj = { name 'John Doe', age 53, toString { return }, valueOf { return } } Lời kết Vậy là chúng ta đã tìm hiểu qua về các cách thay đổi kiểu dữ liệu trong Javascript. Vì kiến thức là vô tận nên trong bài không thể tránh khỏi những thiếu sót cũng như nhầm lẫn, mong mọi người thông cảm là nếu góp ý bên dưới để mình có thể đưa ra nhưng bài viết có chất lượng hơn. Xin cảm ơn mọi người đã đọc bài viết. References

ép kiểu trong javascript