這裏是修真院前端小課堂,每篇分享文從前端
【背景介紹】【知識剖析】【常見問題】【解決方案】【編碼實戰】【擴展思考】【更多討論】【參考文獻】編程
八個方面深度解析前端知識/技能,本篇分享的是:數組
【return的用法是什麼?若在for循環中,還會執行下一次循環嗎?】函數
1.背景介紹編碼
在JavaScript中,有不少常見的運算符和關鍵字,此次咱們來看看其中的 in,typeof,instanceof,還有===,分別是幹什麼的,有什麼用,和什麼狀況下可能會用到 。.net
2.知識剖析對象
2.一、in 運算符blog
IN運算符判斷數組ip
for in組合遍歷大法原型鏈
2.二、typeof運算符
可調出console進行demo
2.三、instanceof 運算符
instansceof最直接的用法
值得一提的是,instanceof 並不能檢測 以string或者number爲數據類型的值的對象,
關於 對 instanceof 的深刻理解,你可能還須要一些 構造函數 和 原型鏈 的相關知識來支撐。
2.四、=== 運算符
3.常見問題
JS運算符 == 和 === 之間有什麼不同?
4.解決方案
==&===原理
5.編碼實戰
6.拓展思考
你們都知道js中可使用 typeof 來判斷 變量 的 基本類型,如:
console.log(typeof '111'); // "string"
console.log(typeof 22); // "number"
console.log(typeof a); // "undefined"
console.log(typeof undefined); // "undefined"
console.log(typeof []); // "object"
可是這個方法不適用於來判斷數組,console.log(typeof []); // "object"
由於無論是數組仍是對象,都會返回object,這就須要咱們尋找其餘的方法,辣麼判斷數組能夠用什麼方法呢?
判斷數組的一些方法
7.參考文獻
http://blog.csdn.net/dansuwei1234/article/details/73826176
8.更多討論
分享人:在平常編程中,你還使用過別的有意思的運算符嗎?
莊引:ES6中還有Array.isArray(arr);這種方法也能夠輕鬆的分辨數組和對象
肖浩宇:NaN的數據類型
分享人:使用typeofNaN得出值爲number;其實這個有點奇怪,咱們也討論了好久,按理說它並非一個數字,在編碼不多直接使用到NaN。一般都是在計算失敗時,做爲 Math 的某個方法的返回值出現的(例如:Math.sqrt(-1))或者嘗試將一個字符串解析成數字但失敗了的時候(例如:parseInt("blabla"))。只能說它的屬性值是一個number,屬於number這個數據類型的集合。
莊引:for in組合遍歷數組與for直接遍歷數組有什麼區別
分享人:for in組合遍歷比for有優點,前者不須要知道數組的長度也能將數組中的元素一一遍歷出來
更多內容,能夠加入IT交流羣565734203與你們一塊兒討論交流
這裏是技能樹·IT修真院:https://www.jnshu.com,初學者轉行到互聯網的彙集地