js中toString方法的三個作用


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()

2. 我們也可以定義一個方法 去覆蓋默認的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 返回日期的文本表示。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM