js物件轉換為原始值

2021-09-25 07:33:16 字數 785 閱讀 4575

所有物件繼承了兩個轉換方法: tostring() 和  valueof()

一. 物件到字串的轉換

1.  如果物件有 tostring() , 呼叫, 如返回原始值, 則轉換成字串並返回;

2.  上述不成立, 呼叫valueof(),如返回原始值, 則轉換成字串並返回;

3.  如不能返回原始值 , 則丟擲型別錯誤異常。

二. 物件到數字的轉換

1. 如果有 valueof() , 呼叫並返回原始值, 則轉換為數字並返回;

2. 上述不成立, 呼叫tostring(), 如返回原始值 , 則轉換為數字並返回;

3. 如都不能返回原始值 , 則丟擲型別錯誤異常。

轉換成數字和轉換成字串所呼叫的兩個方法順序不一樣。

通過物件到數字的轉換可以解釋:

number();// 0

number([1]);// 1

number('');// 0

.valueof()      //

.tostring();   // ''

number('');     // 0

原始值(基本資料型別): number, string, boolean, null, undefined;

引用值(復合資料型別):object, function, date, regexp;

JavaScript物件轉換為原始值的學習筆記

首先指明,本文中提到的轉換,只針對js中的內建物件 本地物件 內建物件是指js標準規範定義的類,比如array,function,object,date等。與內建物件對立的是宿主物件,就是js寄生的環境 瀏覽器,瀏覽器物件有window,dom,bom,event等 1.物件轉換為布林值 所有物件轉...

js中json物件轉換為array

今天遇到了乙個將json物件格式轉換為js陣列的問題,網上down了一下,發現只是對json進行了一些操作。在此寫了乙個小小的 以供有需要的人使用。開門見山,先宣告乙個json物件陣列,在此說一下,js中陣列使用 區分的,而物件是由 區分,當然,這些問題各位大神肯定是都很了解了 這是乙個典型的 js...

js原始值與物件的相等比較

lang en charset utf 8 name viewport content width device width,initial scale 1.0 原始值與物件的相等比較title head let a let b 0 1 console.log a 0 true 2 console....