摘要:序列化處理對象輸出當(dāng)對象的為和時會被忽略,為和為對象實例如,為和都加上雙引號處理數(shù)組輸出當(dāng)成員為時為對象也是為和都加上雙引號自定義序列化可以重寫方法進(jìn)行自定義序列化輸出對象的和輸出輸出調(diào)用了輸出調(diào)用了輸出調(diào)用了當(dāng)和都存在時,在進(jìn)行操作時
序列化 JSON.stringify()處理對象
let obj = { val: undefined, a: NaN, b: Infinity, c: new Date(), d: { e: "nice" }, y: Object } console.log(JSON.stringify(obj)) //輸出 "{ "a": null, "b": null, "c": "2019-03-13T12:01:44.295Z", "d": "{ "e": "nice" }" }"
當(dāng)對象的value為undefined和Object時會被忽略,為NaN和Infinity為null,對象實例如d,為key和value都加上雙引號
JSON.stringify()處理數(shù)組let arr = [undefined, Object, Symbol(""), { e: "nice" }] console.log(JSON.stringify(arr)) //輸出 "[null, null, null, { "e": "nice" }]"
當(dāng)成員為undefined、Object、Symbol時為null,對象也是為key和value都加上雙引號
自定義序列化可以重寫toJSON()方法進(jìn)行自定義序列化
let obj = { x: 1, y: 2, re: { re1: 1, re2: 2, toJSON: function(){ return this.re1 + this.re2; } } } console.log(JSON.stringify(obj)) //輸出 "{ "x":1, "y":2, "re":3 }"對象的toSting()和valueOf()
let obj = { x:1, y:2 } console.log(obj.toString()) //輸出 "[object Object]" obj.toString = function(){ return this.x + this.y; } "Result" + obj; //輸出 "Result3" 調(diào)用了toString +obj; //輸出 "3" 調(diào)用了toString obj.valueOf = function(){ return this.x + this.y + 100; } "Result" + obj; //輸出 "Result103" 調(diào)用了toString
當(dāng)toString和valueOf都存在時,在進(jìn)行操作時,都會嘗試轉(zhuǎn)換成基本類型,先找valueOf,如果返回基本類型,這只調(diào)用valueOf,如果不是,比如是對象的話,就去找toString,如果也返回Object,就會報錯
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/109187.html
摘要:一有和無在圖中,值的六種類型用藍(lán)底色的矩形表示。想一下在語言中,根本沒有布爾類型,通常用來表示邏輯真假的正是整數(shù)和。根據(jù)圖,需要將布爾類型轉(zhuǎn)為數(shù)字類型,而轉(zhuǎn)為數(shù)字的結(jié)果是,所以表達(dá)式變?yōu)閮蓚€操作數(shù)變成了對象類型數(shù)字類型。 大家知道,==是JavaScript中比較復(fù)雜的一個運算符。它的運算規(guī)則奇怪,容易讓人犯錯,從而成為JavaScript中最糟糕的特性之一。 在仔細(xì)閱讀了ECMASc...
數(shù)據(jù)類型轉(zhuǎn)化表 首先上數(shù)據(jù)類型轉(zhuǎn)化表,便于遇到問題直接查看 值 字符串 數(shù)字 布爾值 對象 undefined null undefined null NaN false false throws TypeError throws TypeError true false true false 1 0 new Boolean(true) new Boolean(f...
摘要:個人博客已上線,歡迎前去訪問評論無媛無故的個人博客以下內(nèi)容若有問題煩請即時告知我予以修改,以免誤導(dǎo)更多人。把一個邏輯值轉(zhuǎn)換為字符串,并返回結(jié)果。注冊后,可直接調(diào)用的接口,并獲取的返回值。 個人博客已上線,歡迎前去訪問評論!無媛無故 - wangchloe的個人博客 以下內(nèi)容若有問題煩請即時告知我予以修改,以免誤導(dǎo)更多人。 toString() && valueOf() JSON ...
摘要:個人博客已上線,歡迎前去訪問評論無媛無故的個人博客以下內(nèi)容若有問題煩請即時告知我予以修改,以免誤導(dǎo)更多人。把一個邏輯值轉(zhuǎn)換為字符串,并返回結(jié)果。注冊后,可直接調(diào)用的接口,并獲取的返回值。 個人博客已上線,歡迎前去訪問評論!無媛無故 - wangchloe的個人博客 以下內(nèi)容若有問題煩請即時告知我予以修改,以免誤導(dǎo)更多人。 toString() && valueOf() JSON ...
閱讀 3597·2023-04-26 01:43
閱讀 2984·2021-10-14 09:42
閱讀 5477·2021-09-30 09:59
閱讀 2183·2021-09-04 16:40
閱讀 1219·2019-08-30 15:52
閱讀 837·2019-08-29 17:09
閱讀 2006·2019-08-26 13:37
閱讀 3439·2019-08-26 10:20