學(xué)JavaScript七大注意事項(xiàng)(必看)

字號:


    下面小編就為大家?guī)硪黄獙W(xué)JavaScript七大注意事項(xiàng)【必看】。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考
    知識說明:
    初學(xué)JavaScript,注意以下七大細(xì)節(jié),在實(shí)現(xiàn)同樣功能的情況下,讓我們的代碼更易懂、效率更高。
    一、簡化代碼
    例如:創(chuàng)建對象
    之前是這樣的:
    Var car = new object();
    Car.color = “red”;
    Car.wheels = 4;
    Car.age = 8;
    而現(xiàn)在可以寫成這樣子:
    Var car = {color:'red', wheels:4, age:8}
    例如:創(chuàng)建數(shù)組
    之前是這樣的:
    Var studentArray = new Array(‘zhangsan', 'lisi', ‘zhaowu', ‘wuliu');
    而現(xiàn)在可以寫成這樣子:
    Var studentArray = {‘zhangsan', ‘ lisi', ‘zhaowu', ‘wuliu'};
    例如:使用三元運(yùn)算符簡化代碼
    之前的寫法是:
    Var result;
    if(x > 100)
    {
        Result = 1;
    }else{
        Result = -1;
    }
    而現(xiàn)在可以寫成:
    Var result = x >100 ? 1 : -1;
    二、使用JSON作為數(shù)據(jù)格式
    使用Json格式來存儲數(shù)據(jù):
    var band = {
     "name":"The Red Hot Chili Peppers",
     "members":[
      {
       "name":"Anthony Kiedis",
       "role":"lead vocals"
      },
      {
       "name":"Michael 'Flea' Balzary",
       "role":"bass guitar, trumpet, backing vocals"
      },
      {
       "name":"Chad Smith",
       "role":"drums,percussion"
      },
      {
       "name":"John Frusciante",
       "role":"Lead Guitar"
      }
     ],
     "year":"2009"
    }
    也可以使用JS來存儲數(shù)據(jù),代碼如下:
    <div id = “dataDiv”></div>
    <script>
        Function saveData(data)
    {
        Var out =“<ul>”;
        For(var i=0; i<data.length; i++)
    {
        Out += “<li><a href =”'+data[i].url+'”>+
    data[i].d+</a></li>”;
    }
    Out += ‘</ul>';
    Document.getElementById(‘dataDiv').innerHTML = out;
    }
    </script>
    甚至可以將上面JS生成的存儲數(shù)據(jù)的作為API的返回值
    <script src="http://feeds.delicious.com/v2/json/codepo8/javascript?count=15&callback=delicious">
    </script>
    三、盡量使用JavaScript原生函數(shù)
    例如:獲取一組數(shù)據(jù)中的最大值
    var maxData = Math.max(0,20,50,10);
    alert(maxData);   //返回的最大值為50
    例如:使用JS給一個元素添加class樣式,代碼片段如下:
    Function addClass(elm, newclass)
    {
        Var classes = elm.className.split(‘ ‘ );
        Classes.push(newclass);
        Elm.className = classes.join(‘ ');
    }
    四、事件委托
    例如:
    <h2>Great Web resources</h2>
    <ul id="resources">
     <li><a >Opera Web Standards
    Curriculum</a></li>
     <li><a >Sitepoint</a></li>
     <li><a >A List Apart</a></li>
     <li><a >YUI Blog</a></li>
     <li><a >Blame it on the
    voices</a></li>
     <li><a >Oddly specific</a></li>
    </ul>
    最佳腳本書寫方式:
    (function(){
     var resources = document.getElementById('resources');
     resources.addEventListener('click',handler,false);
     function handler(e){
      var x = e.target; // get the link tha
      if(x.nodeName.toLowerCase() === 'a'){
       alert('Event delegation:' + x);
       e.preventDefault();
      }
     };
    })();
    五、匿名函數(shù)
    var myApplication = function(){
     var name = 'Chris';
     var age = '34';
     var status = 'single';
     function createMember(){
      // [...]
     }
     function getMemberDetails(){
      // [...]
     }
     return{
      create:createMember, get:getMemberDetails
     }
    }();
    //myApplication.get() and myApplication.create() now work.
    六、代碼可配置
    你寫的代碼如果想讓別人更容易進(jìn)行使用或者修改,則需要可配置,解決方案是在你寫的腳本中增加一個配置對象。要點(diǎn)如下:
    1、在你的腳本中新增一個叫configuration的對象。
    2、在配置對象中存放所有其它人可能想要去改變的東西,例如CSS的ID、class名稱、語言等等。
    3、返回這個對象,作為公共屬性以便其它人可以進(jìn)行重寫。
    七、代碼兼容性
    兼容性是初學(xué)者容易忽略的部分,通常學(xué)習(xí)Javascript的時候都是在某個固定的瀏覽器中進(jìn)行測試,而這個瀏覽器很有可能就是IE,這是非常致命的,因?yàn)槟壳皫状笾髁鳛g覽器中偏偏I(xiàn)E對標(biāo)準(zhǔn)的支持是最差的。最終用戶看到的結(jié)果也許就是,你寫的代碼在某個瀏覽器無法正確運(yùn)行。你應(yīng)該把你的代碼在主流的瀏覽器中都測試一下,這也許很費(fèi)時間,但是應(yīng)該這樣做。
    以上這篇學(xué)JavaScript七大注意事項(xiàng)【必看】就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考