亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

您的位置:首頁技術文章
文章詳情頁

詳解JavaScript中的數據類型,以及檢測數據類型的方法

瀏覽:77日期:2023-10-13 10:16:28

一.js中的數據類型有哪些?

在js中,基本數據類型有五種,分別是 string、number、boolean、null、undefined,不過在ES6中新增加的了一種基本數據類型Symbol(表示獨一無二的值),其作用主要是從根本上防止屬性名的沖突而設定的。

除了基本數據類型之外,還有引用數據類型object,也有人稱之為復雜數據類型,包含了我們常見的Array、Object、Function等。

所以現在js中的數據類型共有七種。

PS: Symbol數據類型通過Symbol函數生成。也就是說,對象的屬性名現在可以有原來的字符串以及現在的Symbol類型倆種了,凡是屬性名屬于Symbol類型,就是獨一無二的,可以保證不會與其他屬性名沖突。

Symbol函數還可以接收一個字符串參數,表示對Symbol實例的描述。

let s = Symbol()console.log(typeof s) // 'symbol'let s1 = Symbol(’s1’)let s2 = Symbol(’s2’)console.log(s1) // Symbol(s1)console.log(s2) // Symbol(s2)

注意:Symbol函數的參數只是表示對當前實例的描述,因此相同參數的Symbol的返回值是不相等的。

二.js數據類型檢測的方法(一般有一下幾種):

1.typeof:typeof一般用于檢測基本數據類型,因為它檢測引用數據類型都返回Objcet

console.log(typeof 1) // 'number'console.log(typeof ’a’) // 'string'console.log(typeof undefined) // 'undefined'console.log(typeof true) // 'boolean'console.log(typeof null) // 'object'console.log(typeof ) // 'symbol'function fun(){ }console.log(typeof fun) // 'function'

注意:typeof檢測null也會返回Object,這是js一直以來遺留的BUG。用typeof檢測function返回的是’function’。

2.instanceof 這個方法主要是用來準備的檢測引用數據類型的(不能用來檢測基本數據類型),用來檢測構造函數的prototype屬性是否出現在對象原型鏈中的任意位置。

let fun = function(){ }fun instanceof Function //truelet obj ={ }obj instanceof Object //truelet arr = [ ]arr instanceof Array //true

曾今被面試官問過一道題 1 instanceof 返回的是什么? 當時給因為自身原因說了返回true,現在想想Emmm…

1 instanceof Number //false null instanceof Object // false

instanceof運算符直接訪問的變量的原始值,不會自動建立包裝類。因此不能用來判斷基本數據類型。

3.Object.prototype.toString()可以用來準備的檢測所有數據類型。

Object.prototype.toString.call([])// 'object Array'Object.prototype.toString.call(1)// 'object Number'Object.prototype.toString.call(null)// 'object Null'Object.prototype.toString.call(undefined)// 'object Undefined'Object.prototype.toString.call({})// 'object Object'Object.prototype.toString.call(function add(){})// 'object Function'....

4.constructor通過檢測類型在原型鏈中的constructor指向來返回布爾值。

let arr =[]arr.constructor==Array// truelet fun = function(){}fun.constructor==Function//true

注意:null和undefined是沒有constructor屬性的,可以用其他方法判斷。

通過幾這次的總結,對于js的數據類型,以及如何檢測數據類型有了深刻的認識,下次面試不慌張~

以上就是詳解JavaScript中的數據類型,以及檢測數據類型的方法的詳細內容,更多關于JavaScript 數據類型的資料請關注好吧啦網其它相關文章!

標簽: JavaScript
主站蜘蛛池模板: 亚洲高清无在码在线无弹窗 | 国产精品久久久久久久久久一区 | 97人摸人人澡人人人超一碰 | 国产精品一区二区资源 | 手机看片福利在线 | 欧美三级不卡在线观看视频 | 操碰91 | 日韩欧美精品综合一区二区三区 | 成人性视频在线三级 | 深爱五月开心网亚洲综合 | 亚洲精品一区二区中文 | 成人免费网站在线观看 | 国产美女野外做爰 | 久草视频播放 | 国产精品国产亚洲精品不卡 | 亚洲欧美精选 | 美女黄网站视频 | 日韩色视频一区二区三区亚洲 | 中文字幕亚洲一区二区va在线 | 国产夫妻视频 | 成人国产在线视频在线观看 | 欧美aaaaaaaaaa| 国产情侣普通话刺激对白 | 亚洲精品第一区二区三区 | 久久久久在线观看 | 国产一级一片免费播放视频 | 91免费公开视频 | 久草国产在线播放 | 欧美久久精品 | 久久成人免费大片 | 欧美在线观看一区二区三区 | 乱码一区| 91进入蜜桃臀在线播放 | 精品综合久久久久久98 | 久久九九久精品国产 | 国产成人精选免费视频 | 日韩专区亚洲国产精品 | 免费看男女做好爽好硬视频 | 亚洲在线视频免费 | 男人的天堂在线免费视频 | 国产成人精品综合 |