js型別判斷

2021-08-21 16:11:02 字數 2753 閱讀 7405

typeof

typeof 返回值有七種可能: 「number,」 「string,」 「boolean,」 「object,」 「function,」 , 「undefined,」symbol」

侷限性:對於array,null等特殊物件使用typeof一律返回object。

// numbers

typeof

37 === 'number';

typeof

math.ln2 === 'number';

typeof

infinity === 'number';

typeof

nan === 'number';

typeof

number(1) === 'number';

typeof

number() === 'number';

// strings

typeof

"bla" === 'string';

typeof (typeof

1) === 'string';

typeof

string("abc") === 'string';

// booleans

typeof

true === 'boolean';

typeof

boolean(true) === 'boolean';

// symbols

typeof symbol() === 'symbol'

typeof symbol('foo') === 'symbol'

typeof symbol.iterator === 'symbol'

// undefined

typeof

undefined === 'undefined';

typeof undeclaredvariable === 'undefined';

// objects

typeof === 'object';

typeof [1, 2, 4] === 'object';

typeof

newdate() === 'object';

typeof /s/ === 'object';

typeof

math === 'object'

typeof

newboolean(true) === 'object';

typeof

newnumber(1) === 'object';

typeof

newstring("abc") === 'object';

typeof

null === 'object';

// functions

typeof

function

(){} === 'function';

typeof

class c {} === 'function';

typeof

math.sin === 'function';

typeof

number === 'function';

instanceof
[1] instanceof

array

//true

function

a(){}; a instanceof

function

//大寫f

object.prototype.tostring.call
object.prototype.tostring.call([1]) === '[object array]'

//true

object.prototype.tostring.call(1) === '[object number]'

//true

object.prototype.tostring.call('') === '[object string]'

//true

object.prototype.tostring.call(true) === '[object boolean]'

//true

object.prototype.tostring.call({}) === '[object object]'

//true

object.prototype.tostring.call(symbol()) === '[object symbol]'

//true

object.prototype.tostring.call(function

(){}) === '[object function]'

//true

提供的方法
array.isarray([1])  //true

isnan(nan) //ture

null === null

//true

null == undefined

//true 二者和0或false比較都為false

0 == false

// true

類的繼承判斷

object.getprototypeof方法可以用來從子類上獲取父類。

object.getprototypeof(childrpoint) === point  // true
因此,可以使用這個方法判斷,乙個類是否繼承了另乙個類。

js型別判斷

js型別判斷,有如下三種 1 typeof 2 instanceof 3 object.prototype.tostring.call 4 arg.proto contructor.name 以判斷陣列為例,有如下幾種方法 function isarray arg return arg instan...

判斷JS型別

一 js的型別 js的基本型別共有七種 bigint bigint是一種內建物件,是處symbol外的第二個內建型別 number string boolen symbol undefined null。複雜資料型別有物件 object 包括基本的物件 函式 function 陣列 array 和內...

JS型別判斷

假設要判斷的變數是a 判斷nan 方法一 isnan a 函式,返回布林值 方法二 a!a 原理 不等於自身 typeof a 返回資料型別 null會返回object 引用型別 function會返回function,其他返回object instanceof a instanceof b 返回布...