原始的js代碼和jquery對比體會
更新時間:2013年09月10日 16:08:51 作者:
在我們自己處理的時候,甚至是這么簡單的任務(wù)在不使用jquery的時候都會變得復(fù)雜,通過下面我們可以清晰的看到使用query代碼比原生js代碼寫起來更容易
Even a task as simple as this can be complicated without jQuery at our disposal. In plain JavaScript, we could add the highlightedclass as shown in the following code snippet:
window.onload = function() {
var divs = document.getElementsByTagName('div');
for (var i = 0; i < divs.length; i++) {
if (hasClass(divs[i], 'poem-stanza') && !hasClass(divs[i], 'highlight')) {
divs[i].className += ' highlight';
}
}
function hasClass( elem, cls ) {
var reClass = new RegExp(' ' + cls + ' ');
return reClass.test(' ' + elem.className + ' ');
}
};
在我們自己處理的時候,甚至是這么簡單的任務(wù)在不使用jquery的時候都會變得復(fù)雜。用原始的js,我們可以使用下面的代碼片段添加highlighted類:
Despite its length, this solution does not handle many of the situations that jQuery takes care of for us in Listing 1.2, such as the following:
• Properly respecting other window.onloadevent handlers
• Acting as soon as the DOM is ready
• Optimizing element retrieval and other tasks with modern DOM methods
盡管很長,但是這個解決方案依然沒有處理很多jquery在列表1.2中為我們做到的一些事情,比如下面的這些:
1、合適的處理其他的window.load事件
2、在DOM結(jié)構(gòu)準備好的時候開始行動。
3、使用現(xiàn)代的DOM方法優(yōu)化元素查找和其他任務(wù)。
We can see that our jQuery-driven code is easier to write, simpler to read, and faster to execute than its plain JavaScript equivalent.
我們可以清晰的看到我們的使用query的代碼比原生js代碼寫起來更容易,讀起來更簡單,運行起來更快。
復(fù)制代碼 代碼如下:
window.onload = function() {
var divs = document.getElementsByTagName('div');
for (var i = 0; i < divs.length; i++) {
if (hasClass(divs[i], 'poem-stanza') && !hasClass(divs[i], 'highlight')) {
divs[i].className += ' highlight';
}
}
function hasClass( elem, cls ) {
var reClass = new RegExp(' ' + cls + ' ');
return reClass.test(' ' + elem.className + ' ');
}
};
在我們自己處理的時候,甚至是這么簡單的任務(wù)在不使用jquery的時候都會變得復(fù)雜。用原始的js,我們可以使用下面的代碼片段添加highlighted類:
Despite its length, this solution does not handle many of the situations that jQuery takes care of for us in Listing 1.2, such as the following:
• Properly respecting other window.onloadevent handlers
• Acting as soon as the DOM is ready
• Optimizing element retrieval and other tasks with modern DOM methods
盡管很長,但是這個解決方案依然沒有處理很多jquery在列表1.2中為我們做到的一些事情,比如下面的這些:
1、合適的處理其他的window.load事件
2、在DOM結(jié)構(gòu)準備好的時候開始行動。
3、使用現(xiàn)代的DOM方法優(yōu)化元素查找和其他任務(wù)。
We can see that our jQuery-driven code is easier to write, simpler to read, and faster to execute than its plain JavaScript equivalent.
我們可以清晰的看到我們的使用query的代碼比原生js代碼寫起來更容易,讀起來更簡單,運行起來更快。
相關(guān)文章
JavaScript For Beginners(轉(zhuǎn)載)
JavaScript For Beginners(轉(zhuǎn)載)...2007-01-01
Javascript Object 對象學(xué)習(xí)筆記
這篇文章主要介紹了Javascript Object 對象學(xué)習(xí)筆記,需要的朋友可以參考下2014-12-12
簡介JavaScript中的getUTCFullYear()方法的使用
這篇文章主要介紹了簡介JavaScript中的getUTCFullYear()方法的使用,是JS入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下2015-06-06
在firefox和Chrome下關(guān)閉瀏覽器窗口無效的解決方法
首先IE是可以通過window.close()來關(guān)閉瀏覽器窗口的,但是在firefox和Chrome下是無效的,但是可以通過一些特殊的手段進行關(guān)閉2014-01-01

