J2EE社區(qū)

          茍有恒,何必三更起五更眠;
          最無益,只怕一日曝十日寒.
          posts - 241, comments - 318, trackbacks - 0, articles - 16
          1.高級(jí)函數(shù) 
              1.1 作用域安全的構(gòu)造函數(shù)
                   >例:function Person(name,age,job){
                              this.name=name;
                              this.age=age;
                              this.job=job;
                          }
                          var person = new Person("xcp",23,"program er");
                         alert(person.name);//xcp
                          alert(window.name);//undefined                

                          但如果我這樣生成對(duì)象呢?
                          var person = Person("xcp",23,"programer");
                          alert(window.name);/xcp
                      
                          這是為什么呢?
                          問題出現(xiàn)在當(dāng)沒有使用new操作符來調(diào)用構(gòu)造函數(shù)的情況,由于該this對(duì)象是在運(yùn)行時(shí)綁定的,所以直接調(diào)用Person(),this會(huì)映射到window上

                          解決辦法呢?
                          function Person(name,age,job){
                              if(this instanceof Person){
                                  this.name=name;
                                  this.age = age;
                                  this.job = job;
                              }else{
                                  return new Person(name,age,job);
                              }
                          }

              1.2 函數(shù)綁定
                  函數(shù)綁定要?jiǎng)?chuàng)建一個(gè)函數(shù),可以在特定中指定參數(shù)調(diào)用另外一個(gè)函數(shù)。該技巧常常和回調(diào)函數(shù)與事件處理程序一起使用,以便在見函數(shù)作為變量傳遞的時(shí)候保留代碼執(zhí)行環(huán)境。
                  例如:var handler ={
                              message :"Event handled",
                              handleClick:function(event){
                                      alert(this.message);
                              }
                          }
                          var btn = document.getElementById("sub");
                          EventUtil.addHandler(btn,"click",bind(handler.handleClick,handler));


          2.高級(jí)定時(shí)器
              2.1 setTimeout clearTimeout
              2.2 setIntelval  clearInterval


          3.拖放    
              3.1 常用寫法
                  EventUtil.addHander(document,"mousemove",function(event){
                      var myDiv = document.getElementById("myDiv");
                      myDiv.style.left  = event.clientX+"px";
                      myDiv..style.top = event.clientY+"px";
                  })



          名稱: ?4C.ESL | .↗Evon
          口號(hào): 遇到新問題?先要尋找一個(gè)方案乄而不是創(chuàng)造一個(gè)方案こ
          mail: 聯(lián)系我


          主站蜘蛛池模板: 资兴市| 班戈县| 金平| 福建省| 醴陵市| 天镇县| 佛山市| 金湖县| 梧州市| 莆田市| 道孚县| 万盛区| 萨迦县| 吉木乃县| 渑池县| 德惠市| 赣榆县| 建宁县| 凌源市| 临泉县| 宁安市| 唐海县| 沁源县| 宜兰县| 五大连池市| 茌平县| 科技| 昂仁县| 上虞市| 灵丘县| 江门市| 法库县| 广州市| 瑞昌市| 德钦县| 和静县| 太谷县| 尼木县| 合阳县| 城市| 定州市|