Time of Update: 2017-01-19
第一種:逐個字串相加複製代碼 代碼如下:var arr = ['item 1', 'item 2', 'item 3', ...];list = '';for (var i = 0,l = arr.length; i < l; i++) { list += '' + arr[i] + '';}list = '' + list + '';這種最常見的,但是效率最低!代碼邏輯相對來說複雜。第二種:逐個 push 進數組複製代碼 代碼如下:var arr =
Time of Update: 2017-01-19
網頁的互動越來越複雜,JavaScript 的非同步作業也隨之越來越多。如常見的 ajax
Time of Update: 2017-01-19
JavaScript雖沒有給出繼承的關鍵字,但是我們依然能夠拿出一些好辦法實現。1、原型鏈繼承:複製代碼 代碼如下:var Base = function() { this.level = 1; this.name = "base"; this.toString = function(){
Time of Update: 2017-01-19
如果我問你 0.1 + 0.2 等於幾?你可能會送我一個白眼,0.1 + 0.2 = 0.3 啊,那還用問嗎?連幼兒園的小朋友都會回答這麼小兒科的問題了。但是你知道嗎,同樣的問題放在程式設計語言中,或許就不是想象中那麼簡單的事兒了。不信?我們先來看一段 JS。var numA = 0.1; var numB = 0.2; alert( (numA + numB) === 0.3 ); 執行結果是 false。沒錯,當我第一次看到這段代碼時,我也理所當然地以為它是
Time of Update: 2017-01-19
JavaScript只有函數範圍;每個函數都有個範圍鏈直達window對象。變數的尋找由內而外層層尋找,找到即止。同時不僅可以尋找使用,甚至可以改變外部變數。複製代碼 代碼如下:var color = "blue";function changeColor() { var anotherColor = "red"; function swapColors()
Time of Update: 2017-01-19
Promise 編程模式也被稱為 thenable,可以理解為 延遲後執行。每個 Promise 都擁有一個叫做 then 的唯一介面,當 Promise 失敗或成功時,它就會進行回調。它代表了一種可能會長時間運行而且不一定必須完成的操作結果。這種模式不會阻塞和等待長時間的操作完成,而是返回一個代表了承諾的(promised)結果的對象。當前的許多 JavaScript 庫(如 jQuery 和 Dojo、AngularJS)均添加了這種稱為 Promise
Time of Update: 2017-01-19
本文將介紹讓JavaScript的Alert彈出框失效的方法,也就是禁止讓JS彈出警告框。因為現在都提倡綠色上網環境,彈出框難免會影響你的心情,所以通過以下代碼可將Js彈出框屏蔽掉。<script LANGUAGE="JavaScript"><!--window.alert = function(str){return
Time of Update: 2017-01-19
一、什麼是 QUnitQUnit(http://qunitjs.com/) 是一個非常強大的javascript單元測試架構,可以幫你調試代碼。它是由 jQuery 團隊的成員寫的,而且是 jQuery 的官方測試套裝。但QUnit一般是足以測試任何常規 javascript 代碼,它甚至可能通過一些 javascript 引擎比如 Rhino 或 V8 來測試伺服器端 JavaScript。如果你不熟悉“單元測試”的概念,請不要擔心。這不是很難理解的:複製代碼
Time of Update: 2017-01-19
處理集合裡的每一項是一個非常普通的操作,JavaScript提供了許多方法來迭代一個集合,從簡單的for和for each迴圈到 map(),filter() 和 array comprehensions(數組推導式)。在JavaScript 1.7中,迭代器和產生器在JavaScript核心文法中帶來了新的迭代機制,而且還提供了定製 for…in 和 for each
Time of Update: 2017-01-19
JavaScript 沒有一個權威的編碼風格指南,取而代之的是一些流行的編碼風格:複製代碼
Time of Update: 2017-01-19
在指令碼開發過程中,經常會按照某個規則,組合拼接出一個大字串進行輸出。比如寫指令碼控制項時控制整個控制項的外觀的HTML標籤輸出,比如AJAX裡得到伺服器端的回傳值後動態分析建立HTML標籤時,不過這裡我就不討論拼接字串的具體應用了,我只是想在這裡討論一下拼接的效率。字串的拼接在我們寫代碼的時候都是用“+=”這個運算子,s += String; 這是我們最為熟知的寫法,不知道大家有沒有注意過沒有,在組合的字串容量有幾十K甚至幾百K的時候,指令碼執行起來很慢,CPU使用率狂高,例如:複製代碼
Time of Update: 2017-01-19
ECMAScript5中引入的strict 模式,通過讓JavaScript運行環境對一些開發過程中最常見和不易發現的錯誤做出和當前不同的處理,來讓開發人員擁有一個”更好”的JavaScript語言。很長一段時間內,由於只有Firefox支援strict 模式,我曾對strict 模式表示懷疑。但到了今天,所有主流的瀏覽器都在他們的最新版本中支援了strict 模式(包括IE10,Opera12和Android4,IOS5)是時候開始使用strict 模式了。strict 模式能起到什麼作用
Time of Update: 2017-01-19
Sting字串對象是Javascript提供的內建對象之一。 這裡特別注意,字串中的第一個字元是第0位的,第二個才是第1位的。 1.建立一個字串對象的方法 [var] String 對象執行個體名 = new String(string) 或者是var String 對象執行個體名 = 字串值 例子: var str = "Hello World"; var str1 = new String("This is a string"); 2.String的屬性 length: 返回字串的長度
Time of Update: 2017-01-19
一.兩個原型很多人都知道javascript是原型繼承,每個建構函式都有一個prototype成員,通過它就可以把javascript的繼承演義的美輪美奐了.其實啊,光靠這一個屬性是無法完成javascript的繼承.我們在代碼中使用的prototype完成繼承在這裡就不多說了.大家可以查一下資料.另外一個看不見的prototype成員.每一個執行個體都有有一條指向原型的prototype屬性,這個屬性是無法被訪問到的,當然也就無法被修改了,因為這是維護javascript繼承的基礎.複製代碼
Time of Update: 2017-01-19
最近做一個項目,用到了javascript操縱excel以產生報表,下面是標有詳細註解的執行個體 複製代碼 代碼如下: <html> <head> <script language="javascript" type="text/javascript"> </script><script language="javascript" type="text/javascript"> function MakeExcel(){ var
Time of Update: 2017-01-19
javascript下拉式清單方塊,內容為當前年份及前後50年,預設選擇為當前年份 複製代碼 代碼如下: <script language="javascript" type="text/javascript"> window.onload=function(){ //設定年份的選擇 var myDate= new Date(); var startYear=myDate.getFullYear()-50;//起始年份 var endYear=myDate.getFullYear()
Time of Update: 2017-01-19
javascript和動態網頁無法擷取cookie到期的時間,到期時間由瀏覽器管理,javascript和動態網頁只能設定到期時間,無法通過document.cookie(javascript)或者Cookie.Expires(asp.net)屬性擷取到。複製代碼 代碼如下:<%@page language="C#" Debug="true"%><script runat="server"> protected void
Time of Update: 2017-01-19
從Mozilla Aurora 11起,Firefox瀏覽器裡實現了一些新功能,其中一個就是對電池狀態介面的基本實現。這個很簡單的介面能提供你關於電池當前電量,是否在充電等資訊,以及一些電池狀態變化事件。讓我們來看看效果!電池對象是存放在window.navigator.battery裡,但因為這是Firefox瀏覽器首次實現並提供這個介面,並未普及,你需要使用window.navigator.mozBattery這種寫法。這個mozBattery對象有下列屬性:1.charging:
Time of Update: 2017-01-19
隨著JavaScript程式變得越來越複雜,往往需要一個團隊協作開發,這時代碼的模組化和組織規範就變得異常重要了。MVC模式就是程式碼群組織的傳統模式。(……MVC介紹。)(1)ModelModel表示資料層,也就是程式需要的資料來源,通常使用JSON格式表示。(2)ViewView表示表現層,也就是使用者介面,對於網頁來說,就是使用者看到的網頁HTML代碼。(3)ControllerController表示控制層,用來對未經處理資料(Model)進行加工,傳送到View。由於網頁編程不同於用戶
Time of Update: 2017-01-19
<script></script> 標籤要在 HTML 中使用 JavaScript ,需要使用 <script></script> 標籤,並定義 type 屬性值為 text/javascript ,正如前面的 alert 彈出提示框 例子所示:複製代碼 代碼如下:<script type="text/javascript">alert("我是提示文字!");</script>通常單獨的 JavaScript