AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當前位置:首頁 > 科技  > 軟件

一篇搞懂 toString()函數與valueOf()函數,

來源: 責編: 時間:2023-12-05 09:25:02 272觀看
導讀tostring 和 valueOf 函數是解決值的顯示和運算的問題。所有的 Object 類型的數據都自帶 toString 和 valueOf 函數。比如我們定一個 Object 類型數據:const obj = { name: "duxin"}console.log(obj.valueOf()); //

tostring 和 valueOf 函數是解決值的顯示和運算的問題。所有的 Object 類型的數據都自帶 toString 和 valueOf 函數。UFf28資訊網——每日最新資訊28at.com

比如我們定一個 Object 類型數據:UFf28資訊網——每日最新資訊28at.com

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

toString()

toString 函數的作用是把一個邏輯轉換為字符串,并且返回 Object 類型數據的 toString()默認的返回值"[object Object]"。UFf28資訊網——每日最新資訊28at.com

如果我們在定義對象的時候,可以重寫 tosString 函數,這樣 toString 的返回值可讀性會更好一些,比如:UFf28資訊網——每日最新資訊28at.com

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

以下這些函數都是有自定義的 toString 函數:UFf28資訊網——每日最新資訊28at.com

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

valueOf()

valueOf 函數返回引用類型的原始值,如果沒有原始值,就返回"{}",就是空對象的字面量UFf28資訊網——每日最新資訊28at.com

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

在發生數據類型轉換的時候,有liang兩種場景:UFf28資訊網——每日最新資訊28at.com

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

在執行String(arr)的時候,是先將數組轉為字符串,調用的是toString,它的結果不能轉為string;UFf28資訊網——每日最新資訊28at.com

那就調用valueOf函數,它的返回值也是一個空數組,也不能轉為字符串,那就只能拋出類型轉換異常了。UFf28資訊網——每日最新資訊28at.com

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

本文鏈接:http://www.tebozhan.com/showinfo-26-38114-0.html一篇搞懂 toString()函數與valueOf()函數,

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: Python中的單例模式,這些你都會嗎?

下一篇: 你應該知道的13個最常見的JavaScript字符串方法

標簽:
  • 熱門焦點
  • 7月安卓手機性能榜:紅魔8S Pro再奪榜首

    7月份的手機市場風平浪靜,除了紅魔和努比亞帶來了兩款搭載驍龍8Gen2領先版處理器的新機之外,別的也想不到有什么新品了,這也正常,通常6月7月都是手機廠商修整的時間,進入8月份之
  • 帥氣純真少年!日本最帥初中生選美冠軍出爐

    日本第一帥哥初一生選美大賽冠軍現已正式出爐,冠軍是來自千葉縣的宗田悠良。日本一直熱衷于各種選美大賽,從“最美JK”起到“最美女星&r
  • 線程通訊的三種方法!通俗易懂

    線程通信是指多個線程之間通過某種機制進行協調和交互,例如,線程等待和通知機制就是線程通訊的主要手段之一。 在 Java 中,線程等待和通知的實現手段有以下幾種方式:Object 類下
  • 不容錯過的MSBuild技巧,必備用法詳解和實踐指南

    一、MSBuild簡介MSBuild是一種基于XML的構建引擎,用于在.NET Framework和.NET Core應用程序中自動化構建過程。它是Visual Studio的構建引擎,可在命令行或其他構建工具中使用
  • Flowable工作流引擎的科普與實踐

    一.引言當我們在日常工作和業務中需要進行各種審批流程時,可能會面臨一系列技術和業務上的挑戰。手動處理這些審批流程可能會導致開發成本的增加以及業務復雜度的上升。在這
  • 在線圖片編輯器,支持PSD解析、AI摳圖等

    自從我上次分享一個人開發仿造稿定設計的圖片編輯器到現在,不知不覺已過去一年時間了,期間我經歷了裁員失業、面試找工作碰壁,寒冬下一直沒有很好地履行計劃.....這些就放在日
  • 使用AIGC工具提升安全工作效率

    在日常工作中,安全人員可能會涉及各種各樣的安全任務,包括但不限于:開發某些安全工具的插件,滿足自己特定的安全需求;自定義github搜索工具,快速查找所需的安全資料、漏洞poc、exp
  • 騰訊蓋樓,字節拆墻

    來源 | 光子星球撰文 | 吳坤諺編輯 | 吳先之“想重溫暴刷深淵、30+技能搭配暴搓到爽的游戲體驗嗎?一起上晶核,即刻暴打!”曾憑借直播騰訊旗下代理格斗游戲《DNF》一
  • 外交部:美方應停止在網絡安全問題上不負責任地指責他國

      中國外交部今天(16日)舉行例行記者會。會上,有記者問,美國情報官員稱,他們正在阻攔來自中國以及其他國家的黑客獲取相關科研成果。 中方對此有何評論?對此
Top