Các cách ép kiểu sang string trong javascript

Các cách ép kiểu sang string trong javascript

 Các cách ép kiểu sang string trong javascript



Convert value to String in javascript. Chúng ta sẽ tìm ra một phương pháp đúng đắn để chuyển một giá trị sang chuỗi sử dụng javascript. Và thật bất ngờ đó không phải là value.toString().

"Một code tốt thật sự không nhất thiết phải là code một cách thông minh nhất, mà đó là cách truyền đạt code của bạn cho những người khác một cách dễ dàng nhất."

5 cách chuyển value sang string trong javascript

const value = 12345;

// Concat Empty String
value + '';

// Template Strings
`${value}`;

// JSON.stringify
JSON.stringify(value);

// toString()
value.toString();

// String()
String(value);

// RESULT
// '12345'

So sánh 5 cách convert value to string

Ok rồi, chúng ta sẽ check xem phương án nào là hiệu quả cho việc "convert value to String javascript". Với một data cho trước:

const string = "hello";
const number = 123;
const boolean = true;
const array = [1, "2", 3];
const object = {one: 1 };
const symbolValue = Symbol('123');
const undefinedValue = undefined;
const nullValue = null;


#Concat Empty String

string + ''; // 'hello'
number + ''; // '123'
boolean + ''; // 'true'
array + ''; // '1,2,3'
object + ''; // '[object Object]'
undefinedValue + ''; // 'undefined'
nullValue + ''; // 'null'

// ⚠️
symbolValue + ''; // ❌ TypeError

Có vẻ khá tốt, ngoại trừ symbolValue bị một error


#Template String

`${string}`; // 'hello'
`${number}`; // '123'
`${boolean}`; // 'true'
`${array}`; // '1,2,3'
`${object}`; // '[object Object]'
`${undefinedValue}`; // 'undefined'
`${nullValue}`; // 'null'

// ⚠️
`${symbolValue}`; // ❌ TypeError

TypeError: Cannot convert a Symbol value to a string


#JSON.stringify()

// ⚠️
JSON.stringify(string); // '"hello"'
JSON.stringify(number); // '123'
JSON.stringify(boolean); // 'true'
JSON.stringify(array); // '[1,"2",3]'
JSON.stringify(object); // '{"one":1}'
JSON.stringify(nullValue); // 'null'
JSON.stringify(symbolValue); // undefined
JSON.stringify(undefinedValue); // undefined


#toString()

string.toString(); // 'hello'
number.toString(); // '123'
boolean.toString(); // 'true'
array.toString(); // '1,2,3'
object.toString(); // '[object Object]'
symbolValue.toString(); // 'Symbol(123)'

// ⚠️
undefinedValue.toString(); // ❌ TypeError
nullValue.toString(); // ❌ TypeError


#String()

String(string); // 'hello'
String(number); // '123'
String(boolean); // 'true'
String(array); // '1,2,3'
String(object); // '[object Object]'
String(symbolValue); // 'Symbol(123)'
String(undefinedValue); // 'undefined'
String(nullValue); // 'null'

Bạn cũng có thể thấy sau 5 cách thì cách cuối cùng dùng String() là cách ngon nhất, có thể handle được null và undefined.,

Kết luận: String() 🏆

Sau khi chỉ cho bạn cách tất cả các phương thức khác nhau xử lý loại giá trị khác nhau. Hy vọng rằng, bạn nhận thức được sự khác biệt và bạn sẽ biết công cụ nào sẽ nhận được trong lần tiếp theo bạn giải quyết mã của mình. Nếu bạn không chắc chắn, String () luôn là cách tốt nhất về việc này.

Comment