日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費收錄網(wǎng)站服務,提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

tostring 和 valueOf 函數(shù)是解決值的顯示和運算的問題。所有的 Object 類型的數(shù)據(jù)都自帶 toString 和 valueOf 函數(shù)。

比如我們定一個 Object 類型數(shù)據(jù):

const obj = {
    name: "duxin"
}
console.log(obj.valueOf()); // { name: 'duxin' }

toString()

toString 函數(shù)的作用是把一個邏輯轉換為字符串,并且返回 Object 類型數(shù)據(jù)的 toString()默認的返回值"[object Object]"。

如果我們在定義對象的時候,可以重寫 tosString 函數(shù),這樣 toString 的返回值可讀性會更好一些,比如:

const obj = {
    name: "duxin",
    toString:function(){
        return this.name;
    }
}
console.log(obj.valueOf()); // { name: 'duxin' }
console.log(obj.toString()); // duxin

以下這些函數(shù)都是有自定義的 toString 函數(shù):

  1. Array 的 toString 函數(shù)返回值是以逗號分隔的字符串;
  2. Function 的 toString 函數(shù)返回值是函數(shù)自身的文本定義;
  3. Date 的 toString 函數(shù)返回值是時間字符串;

valueOf()

valueOf 函數(shù)返回引用類型的原始值,如果沒有原始值,就返回"{}",就是空對象的字面量。

  1. Array的valueOf函數(shù)返回的值數(shù)組本身;
  2. Function的valueOf函數(shù)返回的是函數(shù)本身;
  3. Date的valueOf函數(shù)返回的值時間戳。

在發(fā)生數(shù)據(jù)類型轉換的時候,有l(wèi)iang兩種場景:

  1. 引用數(shù)據(jù)類型轉為String,先是調用toString函數(shù),有值的話,就直接返回該字符串;如果對象沒有toString,那就調用valueOf函數(shù),然后將原始值轉為字符串并且返回;如果toString或者valueOf都不能獲取原始值,那就拋出類型轉換異常;
var arr = [];

arr.toString = function () {
     console.log('調用了toString()函數(shù)');
     return [];
};

arr.valueOf = function () {
     console.log('調用了valueOf()函數(shù)');
     return [];
};

console.log(String(arr));

在執(zhí)行String(arr)的時候,是先將數(shù)組轉為字符串,調用的是toString,它的結果不能轉為string;

那就調用valueOf函數(shù),它的返回值也是一個空數(shù)組,也不能轉為字符串,那就只能拋出類型轉換異常了。

  1. 引用類型在轉化為number的時候,首先會判斷對象是否含有valueOf函數(shù),如果有,那就調用valueOf函數(shù),把它的返回值轉為數(shù)字,然后返回;如果沒有valueOf函數(shù),就調用toString函數(shù),將返回值轉為數(shù)字并返回。如果toString或者valueOf都不能獲取到原始值的話,那就拋出類型轉換異常。

分享到:
標簽:toString
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨大挑戰(zhàn)2018-06-03

數(shù)獨一種數(shù)學游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數(shù)有氧達人2018-06-03

記錄運動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定