1)開啟乙個視窗就會有乙個window物件(如頁面上的iframe),window中包含document,document主要是來操作dom元素的(頁面上的標籤元素)
2)我們在頁面上宣告乙個全域性變數其實是宣告在window物件上的,eg:
var abc = 'jy';
alert(window.abc);
alert(abc);
//由此可見全域性變數abc是註冊在window物件上的,即所有的變數都是註冊在window物件上的。頁面上的控制項
//或者元素是註冊在window內部的document物件上的,換句話說window是乙個頁面的最高端。
alert(document.body.innerhtml);
alert(window.document.body.innerhtml);
//由上面可以知道window是在最上層的,它的下面是document,window是指當前整個窗體,而document是指當前頁面中的元素。
3)js中的類其實都是方法,舉個例子來說明一下,eg:
var a = function ()
}
我們可以直接輸出類a的屬性name,使用語句var a=new a();alert(a.name);
下面是乙個複雜的例子,eg:
var a = function ()
}//可以用這種方式來宣告類,其實類也就是方法。js中就是這樣表現類的。
//這裡的b依賴於a
var b = function (aobject) ;
}var a = new a();
alert(a.name);
//下面的是把a注入到b。
var b = new b(a);
//上面相當於呼叫預設建構函式,直接呼叫了alert(aobject.name)
alert(b.attr.age);
b.heihei();
4)js中的alert指令會終止一切程序,只有等到alert執行過後(使用者點掉對話方塊後)才回去執行其他的。這個時候就會出現問題,如angular的表示式,其他語言的對話方塊也是一樣,所以我們要是新增了alert之後**就好用的話,那麼就有可能是程式的執行緒問題,即東西沒執行完,但是不知道在哪塊又進行了呼叫,或者是執行緒問題。
js 高階知識
1 caller 表示呼叫該函式的函式 function fun1 function fun2 fun2 11,22 11 2 function foo var foo new foo var p foo.prototype foo.prototype alert foo.constructor a...
js 高階知識
閉包 注意到返回的函式在其定義內部應用了區域性變數arr,當乙個函式返回乙個函式後,其內部的區域性變數還被新函式引用,閉包用起來簡單,實現起來不容易。箭頭函式 x x x 相當於function x 25比方說對乙個array求和,就可以用reduce實現 var arr 1,3,5,7,9 arr...
js高階知識小結 三
1 什麼是物件導向?是一種程式設計思想 將屬性和方法封裝在一起,然後通過.語法呼叫 2 物件導向好處 a 物件導向思維方式是一種更符合人們思考習慣的思想 b 面向過程思維方式中更多的體現的是執行者 自己做事情 物件導向中更多的體現是指揮者 指揮物件做事情 c 物件導向思維方式將複雜的問題簡單化。3 ...