node.js學習與應用
阿新 • • 發佈:2022-05-05
學習資料
入門:
小白篇 http://samsungapps.csdn.net/text.html?arcid=311044
瞭解了 npm,類似於python的easy_install 把依賴的模組安裝到node.js預設的lib目錄中(其實大部分就是copy)
進階:
進階篇 http://archive.cnblogs.com/a/2127237/
把the node beginner book 讀一遍會對事件模型 函式引數傳遞有個大概瞭解
深入:
http://www.cnblogs.com/phphuaibei/archive/2011/09/03/2165437.html
eclipse js 外掛
下載地址: http://download.macromedia.com/pub/labs/jseclipse/autoinstall
js的prototype使用:
一個常用的方法(小白如我看到很驚奇):
var Closure = function(){}
Closure.prototype={
hello:function(){
console.log("hello world")
}
}
c = new Closure()
c.hello()
所有的物件都可以有prototypes, prototypes自己也是物件,那麼他也可以有prototypes,這樣迴圈下去就形成了一個prototype鏈, 這個鏈當他遇到鏈中隊形的prototype是null時中止。(Object的預設的prototype是null)
js closure
var name = "The Window";
var object = {
name : "My Object",
getNameFunc : function(){
var that = this;
return function(){
return that.name;
};
}
};
alert(object.getNameFunc()())
預設的this是windows 會使用全域性name,需要在閉包中使用當前object的屬性name
js小知識:
- var 定義變數和不帶var的區別:會導致分不清全域性和區域性變數,區域性變數應用var宣告,最好全用var宣告。
- 閉包帶出包含函式的作用域,會多佔記憶體,非必須儘量少用
- setTimeout和setInterval的語法相同。它們都有兩個引數,一個是將要執行的程式碼字串,還有一個是以毫秒為單位的時間間隔,當過了那個時間段之後就將執行那段程式碼。不過這兩個函式還是有區別的,setInterval在執行完一次程式碼之後,經過了那個固定的時間間隔,它還會自動重複執行程式碼,而setTimeout只執行一次那段程式碼。