js typeof 的深入了解

2022-08-30 04:12:08 字數 1445 閱讀 4087

我們都知道,typeof的作用是辨別傳入值的型別;

我們需要注意的是:(typeof的返回值統一都是全小寫的字串)

下面列舉了typeof函式可以識別的型別以及場景:話不多說,直接進入:

"undefined", //

1、未定義物件將會被識別為underfined

2、乙個函式沒有返回值

「boolean」 //false  or true

"number"  //

naninfinity和的方法會被識別為number

"string"  //

切記,函式有返回值,typeof乙個函式等於typeof它的返回值

只要識別的值是字串 name它就會得到string

"symbol" //識別es6的symbol型別是es6帶來新的原始資料型別

「function」  //

es6 class c{}會被解析為function  

math.sin也會被解析為function

還有其他所有函式

"object"  //

物件 陣列 日期都會被識別為object

包裝型別物件(new boolean(true)  new number(1) new string('abc'))也會被解析object

正則也會被解析為 'object'(在chrome1~12是 function)

null 也是;

小知識:typeof document.all === 'undefined'

以上是math的屬性, 值為乙個數字 所以 typeof會返回"number" 其餘的物件方法都為"function"

補充:number.min_safe_integer

number.min_value

的型別也是"number";

但是 typeof的使用也是有限制的,譬如它並不能辨別出陣列型別(array)的值,如果我們傳入的是乙個陣列,那他將返回"object";

具體解決看:

深入了解A

一 前言 在這裡我將對a 演算法的實際應用進行一定的 並且舉乙個有關a 演算法在最短路徑搜尋的例子。值得注意的是這裡並不對a 的基本的概念作介紹,如果你還對a 演算法不清楚的話,請看姊妹篇 初識a 演算法 這裡所舉的例子是參考amit主頁中的乙個源程式,使用這個源程式時,應該遵守一定的公約。二 a ...

深入了解A

一 前言 在這裡我將對a 演算法的實際應用進行一定的 並且舉乙個有關a 演算法在最短路徑搜尋的例子。值得注意的是這裡並不對a 的基本的概念作介紹,如果你還對a 演算法不清楚的話,請看姊妹篇 初識a 演算法 這裡所舉的例子是參考amit主頁中的乙個源程式,使用這個源程式時,應該遵守一定的公約。二 a ...

深入了解Dojo Data

譯自http www.sitepen.com blog 2010 10 13 dive into dojo data 使用dojo data有助於快速建立web應用的介面,且易於嵌入各種資料來源。它在使用者介面與底層資料之間提供了一層抽象層,使得使用者介面開發人員能夠專注於ui的開發,而無需擔心資料...