下面小編就為大家?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)容了,希望能給大家一個參考