?1.返回一個【表示對象】的【字符串】
?2.檢測對象的類型?
Object.prototype.toString.call(arr)==="[object?Array]"
?3.返回該數(shù)字對應(yīng)進(jìn)制的字符串。?
console.log(10.toString(2))?//10專為為2進(jìn)制'1010'
在js中包含2進(jìn)制,8進(jìn)制,10進(jìn)制,18進(jìn)制。
二、返回一個【表示對象】的【字符串】Object.prototype.toString()
1.toString是屬于Object原型上的一個方法。
每一個對象都有一個 toString()方法。?默認(rèn)的情況下,toString()方法被每一個對象繼承。如果toString沒有被定義的對象覆蓋。toString返回 '[object type]'?其中type是對象的類型,type的值可以是Object,
代碼:
class?Person{ ??constructor(name,age){ ????this.name=name ????this.age=age ??} } let?zs=new?Person('張三',18) console.log(?zs.toString()?)?//?[object?Object]
通過上面的輸出語句,我們可以確定。
返回來的確實(shí)是返回一個【表示對象】的【字符串】
三、自定義的toString()我們也可以定義一個方法 去覆蓋默認(rèn)的toString方法。
自定義的toString()方法不能夠傳入?yún)?shù),并且必須返回一個字符串。定義的toString可以返回我們?nèi)魏涡枰闹担绻軌蚋綆魏斡嘘P(guān)對象的信息,他將變成非常有用
代碼如下:
class?Person{ ??constructor(name,age){ ????this.name=name ????this.age=age ??} ??//?重寫Object.prototype.toString() ??toString(){ ????return?`Person{name=${this.name},age=${this.age}}` ??} } let?zs=new?Person('張三',18) console.log(?zs.toString()?)?//Person{name=張三,age=18}
JavaScript的許多內(nèi)置對象都重寫了該函數(shù),以實(shí)現(xiàn)更適合自身的功能需要.
1. Array的每個元素轉(zhuǎn)換為字符串,并將它們依次連接起來,兩個元素之間用英文逗號作為
2.Boolean 如果布爾值是true,則返回"true"。否則返回"false""。
3.Date 返回日期的文本表示。
到此這篇關(guān)于js中toString方法3個作用的文章就介紹到這了,希望大家以后多多支持好二三四!