<link rel="stylesheet" href="https://js.how234.com/cd1ed15f09/d414d3420abbc941c41285aba9a11be10d/d419c45a0eb0/d405fe5919a6.css" type="text/css" /><link rel="stylesheet" href="https://js.how234.com/cd1ed15f09/d414d3420abbc941c41285aba9a11be10d/d419c45a0eb0/d405e95e0eaec46cc61c88b7a2bd.css" type="text/css" /><script type="text/javascript" src="https://js.how234.com/third-party/SyntaxHighlighter/shCore.js"></script><style>pre{overflow-x: auto}</style>
一、toString方法的三個作用
1.返回一個【表示對象】的【字符串】
2.檢測對象的類型
Object.prototype.toString.call(arr)==="[object Array]"
3.返回該數字對應進制的字符串。
console.log(10.toString(2)) //10專為為2進制'1010'
在js中包含2進制,8進制,10進制,18進制。
二、返回一個【表示對象】的【字符串】
Object.prototype.toString()
1.toString是屬於Object原型上的一個方法。
每一個對象都有一個 toString()
方法。 默認的情況下,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]
通過上面的輸出語句,我們可以確定。
返回來的確實是返回一個【表示對象】的【字符串】
三、自定義的toString()
我們也可以定義一個方法 去覆蓋默認的toString
方法。
自定義的toString()
方法不能夠傳入參數,並且必須返回一個字符串。定義的toString可以返回我們任何需要的值,如果他能夠附帶任何有關對象的信息,他將變成非常有用
代碼如下:
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
的許多內置對象都重寫了該函數,以實現更適合自身的功能需要.
1. Array
的每個元素轉換為字符串,並將它們依次連接起來,兩個元素之間用英文逗號作為
2.Boolean
如果布爾值是true,則返回"true"。否則返回"false""。
3.Date
返回日期的文本表示。
到此這篇關於js中toString
方法3個作用的文章就介紹到這了,希望大家以後多多支持好二三四!