JavaScript toString() と String()

JavaScript で値を文字列に変換するには 2 つの方法があります

  • toString()このメソッドをサポートしていない null と unknown を除き、他のデータ型がサポートされています。また、整数の場合、 toString() は異なる基数での文字列表現への変換もサポートしています。
let b = false,
    s = 'xxx',
    n = 16;

console.log("false toString():", b.toString());
console.log("'xxx' toString():", s.toString());
console.log("16 toString():", n.toString());
// 十六进制
console.log("16 toString(16):", n.toString(16));

印刷する

false toString(): false
'xxx' toString(): xxx
16 toString(): 16
16 toString(16): 10

  • String()変換機能、すべてのデータ型をサポート

String() の変換ルール:

  1. 変換対象の値に toString() メソッドがある場合は、それを直接呼び出します (toString() のパラメータはここでは指定できないため、整数は直接 10 進数の文字列形式に変換され、別の基数として指定することはできません)
  2. nullの場合は「null」を返します
  3. 未定義の場合は「未定義」を返します
let b = false,
    s = 'xxx',
    n = 16;
let x = {
    
     toString: () => 'xxx' };

console.log("String(false):", String(b));
console.log("String('xxx'):", String(s));
console.log("String(16):", String(16));
console.log("String({ toString: () => 'xxx' }):", String(x));
console.log("String(null):", String(null));
console.log("String(undefined):", String(undefined));

印刷する

String(false): false
String('xxx'): xxx
String(16): 16
String({ toString: () => 'xxx' }): xxx
String(null): null
String(undefined): undefined

おすすめ

転載: blog.csdn.net/jiang_huixin/article/details/125933863