摘要:在看醫用類型的例子上述代碼中,都是引用類型。數據類型檢測返回一個表示數據類型的字符串,返回結果包括等種數據類型,但不能判斷等。有效有效有效有效有效有效無效無效無效無效是用來判斷是否為的實例,表達式為,如果是的實例,則返回否則返回。
js中常用的數據類型
JavaScript 變量能夠保存多種數據類型,而JavaScript中的數據類型分為基本數據類型和引用數據累心,常用的基本數據類型包括數字(Number)、字符串(String)、布爾值(Boolean)、Null、Undefine、Symbol等,常用的引用數據類型包括Object(對象)、Array(數組)、Function(函數)。 基本類型和引用類型存儲于內存的位置不同,基本類型直接存儲在棧中,而引用類型的對象存儲在堆中,與此同時,在棧中存儲了指針,而這個指針指向正是堆中實體的起始位置,區別如下:
let a = 10; let b = a; b = 20; console.log(a) //10 console.log(b) //20
上述代碼中,a、b都是基本數據類型,兩者分別修改賦值,相互之間沒有任何影響。在看醫用類型的例子:
let x = {a:10,b:20} let y = x y.a = 100 y.b = 200 console.log(x) //{a:100,b:200} console.log(y) //{a:100,b:200}
上述代碼中,x、y都是引用類型。在執行了x = y之后,修改y的屬性值,x的也跟著變化。因為x和y都是引用類型,指向了同一個內存地址,即兩者引用的是同一個值,因此y修改屬性時,x的值隨之改動。數據類型檢測
typeof
typeof返回一個表示數據類型的字符串,返回結果包括:number、boolean、string、symbol、object、undefined、function等7種數據類型,但不能判斷null、array等。
typeof Symbol(); // symbol 有效 typeof ""; // string 有效 typeof 1; // number 有效 typeof true; //boolean 有效 typeof undefined; //undefined 有效 typeof new Function(); // function 有效 typeof null; //object 無效 typeof []; //object 無效 typeof new Date(); //object 無效 typeof new RegExp(); //object 無效
instanceof
是用來判斷A是否為B的實例,表達式為:A instanceof B,如果A是B的實例,則返回true,否則返回false。instanceof 運算符用來測試一個對象在其原型鏈中是否存在一個構造函數的 prototype 屬性,但它不能檢測null 和 undefined
[] instanceof Array; //true {} instanceof Object; //true new Date() instanceof Date; //true new RegExp() instanceof RegExp //true null instanceof Null //報錯 undefined instanceof undefined //報錯
Object.prototype.toString.call()
Object.prototype.toString.call() 是最準確最常用的方式。
Object.prototype.toString.call("") ; // [object String] Object.prototype.toString.call(1) ; // [object Number] Object.prototype.toString.call(true) ; // [object Boolean] Object.prototype.toString.call(undefine) ; // [object Undefined] Object.prototype.toString.call(null) ; // [object Null] Object.prototype.toString.call(new Function()) ; // [object Function] Object.prototype.toString.call(new Date()) ; // [object Date] Object.prototype.toString.call([]) ; // [object Array] Object.prototype.toString.call(new RegExp()) ; // [object RegExp] Object.prototype.toString.call(new Error) ; // [object Error]
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/105105.html
摘要:最近開始看源碼,并將源碼解讀放在了我的計劃中。今天就跟大家聊一聊中一些常用類型檢查方法,以及一些工具類的判斷方法。用是否含有屬性來判斷工具類判斷方法接下來看下一些常用的工具類判斷方法。 Why underscore 最近開始看 underscore.js 源碼,并將 underscore.js 源碼解讀 放在了我的 2016 計劃中。 閱讀一些著名框架類庫的源碼,就好像和一個個大師對話...
摘要:摘要這篇文章講述運算符判斷基本類型和引用類型的區別,以及怎么判斷數組類型和空對象有種原始類型,即和。類型判斷類型判斷,一般就是判斷是否是數組,是否是空對象。方法四使用語法,返回一個數組,只需要判斷數組長度是否大于即可。 摘要 這篇文章講述typeof運算符判斷基本類型和引用類型的區別,以及怎么判斷數組類型和空對象 typeof ECMAScript 有 5 種原始類型(primitiv...
摘要:和這三種基本的數據類型,都有對應的引用包裝類型和。應用于引用類型的判斷,所以對于這三類基本類型沒有什么意義。 JS 中的類型判斷 js中的數據類型 基本數據類型 undefined、number、string、boolean 引用數據類型 null、Object、Number、String、Boolean、Function、Array、Date、RegExp、Error、Argumen...
摘要:中九個內置對象在規范中定義了六種數據類型其中原始值類型有種,引用類型有種一有包裝對象數值型,包括整形和浮點型其中都是類型二有包裝對象字符串類型,有兩種表示方式,雙引號單引號。方法可以將任意類型數據轉成字符串。 JS中九個內置對象 showImg(https://segmentfault.com/img/bV6iZG?w=481&h=411); 在ECMAScript規范(ES5)中定義...
摘要:最常見的判斷方法它的官方解釋操作符返回一個字符串,表示未經計算的操作數的類型。另外,是判斷對象是否屬于某一類型,而不是獲取的對象的類型。多個窗口意味著多個全局環境,不同的全局環境擁有不同的全局對象,從而擁有不同的內置類型構造函數。 js中的數據類型 js中只有六種原始數據類型和一個Object: Boolean Null Undefined Number String Symbol ...
摘要:基本數據類型引用類型判斷數據類型的方法判斷中的數據類型有一下幾種方法接下來主要比較一下這幾種方法的異同。通常情況下用判斷就可以了,遇到預知類型的情況可以選用或方法實在沒轍就使用方法。 基本數據類型:String、Number、Boolean、Symbol、undefined、Null引用類型:Object Array Function 判斷數據類型的方法: 判斷js中的數據類型有一...
閱讀 3715·2021-10-14 09:43
閱讀 3311·2021-08-25 09:38
閱讀 609·2019-08-30 15:55
閱讀 1343·2019-08-30 13:05
閱讀 2238·2019-08-29 16:05
閱讀 501·2019-08-29 12:58
閱讀 2791·2019-08-29 12:34
閱讀 3241·2019-08-26 12:15