成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

分享JavaScript開(kāi)發(fā)實(shí)戰(zhàn)經(jīng)驗(yàn)

開(kāi)發(fā) 前端
本文介紹的是JavaScript開(kāi)發(fā)實(shí)戰(zhàn)經(jīng)驗(yàn),主要從9個(gè)方面為大家介紹的。希望對(duì)你有幫助,一起來(lái)看。

JavaScript是一種廣泛用于客戶(hù)端Web開(kāi)發(fā)的腳本語(yǔ)言,常用來(lái)給HTML網(wǎng)頁(yè)添加動(dòng)態(tài)功能,下面介紹九個(gè)JavaScript開(kāi)發(fā)的經(jīng)驗(yàn),供大家參考。

1、使用正確的 <script> 標(biāo)簽

如果你需要在 html 文檔中使用一些 JavaScript 代碼,你應(yīng)當(dāng)通常會(huì)使用如下的 <script> 標(biāo)簽:

 

  1. <script type="text/javascript">  
  2. //insert your code here  
  3. </script> 

 

但是在源代碼中,以下這種標(biāo)簽寫(xiě)法隨處可見(jiàn):

 

  1. <script type="text/javascript" language="javascript">  
  2. //insert your code here  
  3. </script> 

 

在 HTML 中,language 屬性已經(jīng)過(guò)時(shí),因?yàn)榫哂?type 屬性后,language 它是冗余的。不要再這樣寫(xiě)了。

事實(shí)上,客戶(hù)端默認(rèn)為將 JavaScript 代碼指定 type=”text/javascript” 屬性,除非需要 type=”application/x-javascript” 這樣的類(lèi)型,否則完全沒(méi)有必要寫(xiě) type 屬性。關(guān)于 JavaScript MIME 類(lèi)型,這里有一篇參考文檔:http://krijnhoetmer.nl/stuff/javascript/mime-types/

2、將代碼放置于外部文件

使用外部 .js 文檔比在 html 文檔里直接寫(xiě) JavaScript 代碼要簡(jiǎn)潔一些,同時(shí)也使得 JS 文件可以被緩存,保證網(wǎng)站資源的快速訪問(wèn)。

將你的 JavaScript 代碼置于一個(gè) .js 文檔中,然后在 html 文檔中使用 <script> 標(biāo)簽來(lái)引入它:

 

  1. <script src="http://www.mangguo.org/myscript.js"></script> 

 

3、避免使用 HTML 注釋包裹代碼

90 年代一些非常古老的瀏覽器無(wú)法執(zhí)行 JavaScript 代碼。為了防止這些瀏覽器出現(xiàn)不必要的結(jié)果。在 1994 年至 1997 年間,在 HTML 中使用注釋包裹 JavaScript 代碼是良好的兼容方案,以保證不支持 JavaScript 的瀏覽器能夠忽略它。

這里是一個(gè)簡(jiǎn)單案例:

 

  1. <script language="JavaScript">  
  2. <!--  
  3. //insert your code here  
  4. //-->  
  5. </script> 

 

然而在 2010 年,所有的瀏覽器(甚至是可愛(ài)的 IE 6)都能解釋 JavaScript 代碼,因此絕對(duì)沒(méi)有使用注釋包裹 JS 代碼的必要了。更糟的是,如果代碼被 HTML 注釋包裹,并且使用了 — 符號(hào),瀏覽器可能會(huì)誤以為 HTML 文檔已經(jīng)結(jié)束。

4、使用框架

除非你的 JavaScript 代碼很短或者很簡(jiǎn)單,你應(yīng)該通過(guò)框架來(lái)避免過(guò)多代碼上的重復(fù)勞動(dòng)。在我看來(lái),jQuery 是***的,有一個(gè)很棒的社區(qū),所以值得嘗試。

芒果語(yǔ):其實(shí) YUI 也很棒,系統(tǒng)、強(qiáng)大、完善、穩(wěn)妥。更有牛逼叉叉的 Loader 機(jī)制,更高效地提高 Web 應(yīng)用的性能。

5、使用 var 關(guān)鍵字聲明變量

你應(yīng)當(dāng)使用 var 語(yǔ)句來(lái)聲明變量,否則變量會(huì)存在于全局作用域內(nèi),并且使用 var 使得代碼可讀易懂。

比如下面的案例:

 

  1. var name = "Jean";  
  2. var size = data.length; 

 

之前在 JavaScript 中的對(duì)象引用機(jī)制 的評(píng)論中也有涉及變量作用域的問(wèn)題。

6、保持代碼的分離

幾年前,當(dāng)一個(gè)程序員想要為一個(gè) HTML 元素添加事件時(shí)(比如說(shuō),你想要在用戶(hù)輸入時(shí)驗(yàn)證時(shí)間信息),他會(huì)使用特殊的屬性把 JavaScript 代碼放置于 html 中,比如 onblur、onchange,onclick 等等。比如:

<input type="text" name="date" onchange="validateDate()" />雖然照樣可行,但卻很不簡(jiǎn)潔。HTML 應(yīng)當(dāng)只包含文檔的結(jié)構(gòu)層面,就如同使用內(nèi)聯(lián) CSS 是不好的做法一樣,內(nèi)聯(lián) JavaScript 同樣不可取。

取而代之,下面的代碼如何?使用 jQuery 也很簡(jiǎn)單:

 

  1. $(document).ready(function(){  
  2. $('input[name=date]').bind('change', validateDate);  
  3. }); 

 

7、在文檔底部包含腳本文件

不久以前,在 <head> 和 </head> 標(biāo)簽之間插入腳本文件一度成為***實(shí)踐。但瀏覽器是順序解析文檔,并動(dòng)態(tài)加載外部文件的。這就意味著在頁(yè)面頭部插入腳本會(huì)在安排在頁(yè)面內(nèi)容之前加載。

為了在內(nèi)容就緒之后再加載腳本,JavaScript 文件應(yīng)該在文檔底部被包含。就像下面這樣:

 

  1. <script src="myscript.js?"></script>  
  2. </body>  
  3. </html> 

 

8、使用 JSLint

JSLint 是一款用于 JavaScript 源代碼檢查的應(yīng)用程序。如果它發(fā)現(xiàn) JS 中存在某些問(wèn)題,就會(huì)返回相關(guān)的問(wèn)題描述信息和大概的解決方案。

JSLint 能有效發(fā)現(xiàn)代碼中的缺陷,或者說(shuō)代碼風(fēng)格上值得改進(jìn)之處。這個(gè)站點(diǎn)是 JavaScript 開(kāi)發(fā)絕對(duì)值得收藏的。

9、不要輕易使用 document.write

陳舊的 document.write 方法已經(jīng)被不贊成使用了好些年,然而這仍然是一貫使用的方法。

 

  1. document.write("hello world"); 

 

應(yīng)當(dāng)使用 DOM 的 innerHTML 屬性在頁(yè)面中插入文本。

 

  1. document.getElementById('hello').innerHTML = 'hello world'

 

英文原稿:http://www.catswhocode.com/blog/best-practices-for-modern-javascript-development
翻譯整理:http://www.mangguo.org/9-best-practices-for-javascript-development/

【編輯推薦】

  1. JavaScript重構(gòu) 模塊劃分和命名空間
  2. 談JavaScript中的移除空事件處理程序
  3. 談JavaScript中的事件委托
  4. 詳解JavaScript之分解任務(wù)
  5. 詳細(xì)介紹JavaScript中的cookie
責(zé)任編輯:于鐵 來(lái)源: 芒果
相關(guān)推薦

2015-11-10 09:50:51

IT實(shí)施計(jì)劃IT

2015-11-10 09:40:55

IT實(shí)施計(jì)劃IT

2013-01-25 10:37:51

敏捷開(kāi)發(fā)

2017-01-05 16:29:00

2017-08-21 08:20:03

海云捷迅教育云實(shí)戰(zhàn)

2025-05-30 08:09:28

2025-07-04 00:00:00

2010-07-06 16:22:14

2009-10-20 09:17:27

2023-10-23 13:03:04

2017-11-02 15:07:56

代碼重寫(xiě)代碼開(kāi)發(fā)

2023-11-14 10:56:56

2019-12-03 10:46:07

PHP高并發(fā)架構(gòu)

2009-02-20 10:09:00

網(wǎng)吧掉線路由器

2021-05-19 20:20:56

Oracle歸檔修復(fù)

2013-05-27 14:03:10

綜合布線布線經(jīng)驗(yàn)

2012-06-12 16:30:28

數(shù)據(jù)庫(kù)遷移

2021-12-24 08:18:01

CIO數(shù)據(jù)分析

2010-02-23 16:17:59

2009-05-25 10:21:00

光纜網(wǎng)絡(luò)光纖測(cè)試
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 国产视频中文字幕 | 久久新| 亚洲综合视频一区 | 孕妇一级毛片 | 欧美一区二区成人 | 一区二区三区亚洲 | 国产 日韩 欧美 在线 | av福利网 | 四虎影院新网址 | 欧美日韩不卡 | 九九热这里只有精品6 | 欧美激情一区二区三区 | 97国产一区二区精品久久呦 | 国产资源在线观看 | 99re免费| 久久久久中文字幕 | 欧美在线一区二区三区 | 91精品国产综合久久国产大片 | 亚洲国产成人av好男人在线观看 | 久久99精品久久 | 亚洲综合免费 | 欧美高清性xxxxhd | 中文字幕国产 | 日韩高清电影 | 国产视频一二三区 | 欧美在线色 | 久久久国产一区二区三区四区小说 | 天天操天天摸天天爽 | 91久久久久久久久久久久久 | 国产偷录叫床高潮录音 | 亚洲一区二区免费看 | 久久久久久国产精品免费免费 | 九色91视频| 日韩不卡在线观看 | 亚洲福利在线视频 | 精品国产18久久久久久二百 | 亚洲色图第一页 | 国产99久久精品一区二区永久免费 | 台湾a级理论片在线观看 | 日韩一区二区三区精品 | 亚洲国产欧美在线 |