最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript類型轉(zhuǎn)換String()和.toString()的區(qū)別

 更新時間:2026年02月11日 10:36:27   作者:壯壯愛吃秋刀魚  
String()和toString()是我們?nèi)粘W畛S玫棉D(zhuǎn)換js得方法,平時使用也不會特意去區(qū)分有啥不同,今天遇到了記錄下,這篇文章主要介紹了JavaScript類型轉(zhuǎn)換String()?和.toString()區(qū)別的相關(guān)資料,需要的朋友可以參考下

String().toString() 都是把值轉(zhuǎn)成字符串的常見方式,但它們在 調(diào)用方式、可用性、返回結(jié)果 上有明顯區(qū)別。下面我用通俗的方式幫你徹底講清楚??

一句話總結(jié)

對比項(xiàng)String().toString()
類型函數(shù)(全局函數(shù))方法(對象實(shí)例的方法)
能否處理 null / undefined? 可以? 報錯
調(diào)用方式String(value)value.toString()
返回結(jié)果返回值的字符串形式返回對象自帶的字符串表示
典型用途更安全地轉(zhuǎn)字符串已知是對象或數(shù)字時調(diào)用更簡潔

一、String()是全局函數(shù)

它可以安全地轉(zhuǎn)換任何類型為字符串,包括 nullundefined。

String(123)        // '123'
String(true)       // 'true'
String(null)       // 'null'
String(undefined)  // 'undefined'
String({ a: 1 })   // '[object Object]'

?? 內(nèi)部邏輯(簡化版):

  • 如果是 nullundefined → 直接返回 'null' / 'undefined'
  • 否則 → 調(diào)用對象的 .toString() 方法

二、.toString()是對象的方法

它是定義在大多數(shù)對象原型上的方法,比如:

  • Number.prototype.toString()
  • Boolean.prototype.toString()
  • Array.prototype.toString()
  • Object.prototype.toString()

不能對 null 或 undefined 調(diào)用,否則直接報錯 ??

(123).toString()       // '123'
true.toString()        // 'true'
[1, 2, 3].toString()   // '1,2,3'
({a:1}).toString()     // '[object Object]'

null.toString()        // ? TypeError: Cannot read properties of null
undefined.toString()   // ? TypeError: Cannot read properties of undefined

三、什么時候用哪個?

使用場景推薦方法
不確定值是不是 null/undefined? 用 String(value)(更安全)
明確是數(shù)字、布爾值、數(shù)組等? 用 .toString()(更語義化)
想格式化對象內(nèi)容JSON.stringify(value) 更合適

舉個綜合例子:

const values = [123, true, null, undefined, [1,2], {x:1}];

values.forEach(v => {
  console.log('String():', String(v));
  console.log('toString():', v?.toString?.() ?? '? 無 toString 方法');
  console.log('---');
});

輸出:

String(): 123
toString(): 123
---
String(): true
toString(): true
---
String(): null
toString(): ? 無 toString 方法
---
String(): undefined
toString(): ? 無 toString 方法
---
String(): 1,2
toString(): 1,2
---
String(): [object Object]
toString(): [object Object]

總結(jié)

項(xiàng)目String().toString()
調(diào)用方式函數(shù)調(diào)用方法調(diào)用
是否安全安全(支持 null/undefined)不安全
適合場景通用轉(zhuǎn)換明確類型時使用
結(jié)果差異基于類型的默認(rèn)規(guī)則調(diào)用該對象原型鏈上的方法

到此這篇關(guān)于JavaScript類型轉(zhuǎn)換String()和.toString()區(qū)別的文章就介紹到這了,更多相關(guān)JS String() 和.toString()區(qū)別內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

洛扎县| 桐梓县| 余姚市| 赣州市| 于田县| 汕尾市| 东丽区| 安福县| 株洲县| 三亚市| 昭觉县| 比如县| 六盘水市| 大足县| 秦安县| 桓仁| 宜兰市| 万载县| 枣阳市| 廉江市| 宜春市| 襄汾县| 哈密市| 三都| 甘孜县| 惠水县| 蓬莱市| 绥中县| 张家川| 宣恩县| 新泰市| 彰化市| 涟源市| 金华市| 奎屯市| 临夏县| 随州市| 本溪市| 拉萨市| 平乡县| 穆棱市|