已采納回答 / 慕萊塢8208790
轉換數組變量type給arr3,arr4?--- 這個只是為了將對應的元素的類型放在新的數組里為什么for-in只在arr1里面迭代---因為兩個數組的長度一樣,所以使用哪一個迭代都一樣的
2018-09-19
已采納回答 / 慕沐0441247
<...code...>可以把閉包理解為函數,是一種‘特殊’點的函數,普通的函數,咱們在函數調用后,函數里面的變量就被js當做垃圾回收,但是閉包就厲害了,在函數調用后,本例是foo(2),仍可以訪問函數內部的變量,本例中是foo內部的變量tmp和參數x,由于閉包存在,tmp和x會對js垃圾回收機說:"我是bar函數大哥的小弟,你敢清理我么。"?js垃圾回收機就默默走開了。。
2018-09-19
已采納回答 / 許總
1)在使用Object.defineProperty、Object.defineProperties 或 Object.create 函數的情況下添加數據屬性,writable、enumerable和configurable默認值為false。2)使用對象直接量創建的屬性,writable、enumerable和configurable特性默認為true。
2018-08-19
已采納回答 / Suo不倒
像outer這種情況,一個括號是不可以的,因為它里面還有一個匿名函數作為返回值,你可以console一下outer,結果是outer函數里面return后面的函數 ?function(){ return localValue2} ,用outer()()就可以了,具體的一東西,你可以去查查資料
2018-07-02
已采納回答 / 慕函數2793691
看了網上的答案,我說一下我的理解:1). []==[]?兩個值都是對象時, 比較的是兩個引用值在內存中是否是同一個對象.所以是false2).[]==![] 因為! 優先級比==高,所以我們先看 ![] , !是轉變成布爾值,js中[]布爾值是true,所以![]為false,現在到判斷==, 現在變成判斷[]==false. 這時候[]不會變成布爾值,即true,會按照js標準 []看成0.于是最終轉變為0==false,答案就出來了true.3).看第二個后面如果還是不懂就百度一下吧
2018-03-31