Time of Update: 2017-01-19
一、定義模板方法是基於繼承的設計模式,可以很好的提高系統的擴充性。 java中的抽象父類、子類 模板方法有兩部分結構組成,第一部分是抽象父類,第二部分是具體的實現子類。二、樣本Coffee or Tea (1) 把水煮沸 (2) 用沸水浸泡茶葉 (3) 把茶水倒進杯子 (4) 加檸檬/* 抽象父類:飲料 */var Beverage = function(){};// (1) 把水煮沸Beverage.prototype.boilWater = function() {
Time of Update: 2017-01-19
一、迴圈語句眾所周知,常用的迴圈語句有for、while、do-while以及for-in,forEach。除了for-in和forEach效能略低外,平時我們對前三者的選擇更多的是基於需求而非效能考慮,今天我們就對它們各自的效能做個測試,告訴我們最極端的情況下還能做哪些最佳化。首先我們來談談為何for-in和forEach會比其他的慢。for-in一般是用在對象屬性名稱的遍曆上的,由於每次迭代操作會同時搜尋執行個體本身的屬性以及原型鏈上的屬性,所以效率肯定低下;而forEach是基於函數的迭代
Time of Update: 2017-01-19
JavaScript 在瀏覽器中的效能,可認為是開發人員所要面對的最重要的可用性問題。此問題因JavaScript的阻塞特徵而複雜,也就是說,當JavaScript 運行時其他的事情不能被瀏覽器處理。事實上,大多數瀏覽器使用單進程處理UI 更新和JavaScript
Time of Update: 2017-01-19
本文執行個體講解了JavaScript 實現彩票中隨機數組的擷取詳細代碼,分享給大家供大家參考,具體內容如下效果圖:具體代碼:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Math.random方法彩票隨機數的產生</title></head><body> <!-- 設定樣式 --> <
Time of Update: 2017-01-19
本文執行個體講述了JavaScript+html5 canvas繪製繽紛多彩的三角形效果。分享給大家供大家參考,具體如下:運行效果截圖如下:具體代碼如下:<!DOCTYPE HTML><html> <head> <title>demo</title> <style type="text/css"> body { margin:0; padding:0; } #canvas { width:500
Time of Update: 2017-01-19
事件是javascript中的核心內容之一,在對事件的應用中不可避免的要涉及到一個重要的概念,那就是事件冒泡,在介紹事件冒泡之前,先介紹一下另一個重要的概念事件流:一.什麼是事件流:文件物件模型(DOM)是一個樹形結構,可以形象的用下圖表示。如果一個html元素觸發事件,那麼這個事件就會在DOM樹中的觸發節點和根節點之間按照一定的順序傳播,所有經過的節點都會接收到被觸發的事件,這個傳播過程被稱之為事件流。按照事件的傳播順序,可以將其分為兩類,一種是事件冒泡,一種是事件捕獲,這裡就涉及到本章要介紹
Time of Update: 2017-01-19
本文執行個體介紹了javascript返回頂部的按鈕實現方法,分享給大家供大家參考,具體內容如下html:<a href="javascript:;" id="btn" title="回到頂部"></a>css:#btn{position:fixed;display:none;}script:擷取捲軸高度:document.documentElement.scrollTop ||
Time of Update: 2017-01-19
本文執行個體講解了JavaScript電子時鐘倒計時的詳細代碼,分享給大家供大家參考,具體內容如下JavaScript時間類1、擷取時分秒: getHours() getMinutes();
Time of Update: 2017-01-19
我們將為大家詳解Mustache.js輕量級JavaScript模版引擎使用方法。簡單樣本function show(t) { $("#content").html(t);}var view = { title: 'YZF', cacl: function () { return 6 + 4; }};$("#content").html(Mustache.render("{{title}} spends {{cacl}}", view));可以很明顯的看出Mustache模板的文法,只需要使用{
Time of Update: 2017-01-19
一、定義享元(flyweight)模式是一種用於效能最佳化的模式,核心是運用共用技術來有效支援大量細刻度的對象。 在JavaScript中,瀏覽器特別是移動端的瀏覽器分配的記憶體並不算多,如何節省記憶體就成了一個非常有意義的事情。 享元模式是一種用時間換空間的最佳化模式 內衣工廠有100種男士內衣、100中女士內衣,要求給每種內衣拍照。如果不使用享元模式則需要200個塑料模特;使用享元模式,只需要男女各1個模特。二、什麼情境下使用享元模式?(1)程式中使用大量的相似對象,造成很大的記憶體開銷
Time of Update: 2017-01-19
本文執行個體介紹了javascript實現圖片左右轉場效果的詳細代碼,分享給大家供大家參考,具體內容如下效果圖:具體代碼:<html> <head> <title>JS圖片左右轉場效果</title> <meta charset="utf-8"/> <style type="text/css"> *{ margin:0; padding:0;
Time of Update: 2017-01-19
本文執行個體介紹了JavaScript時間操作之級聯日期選擇操作的詳細代碼,分享給大家供大家參考,具體內容如下效果圖:具體代碼:<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=GB2312"> <title>年月日星期級聯</title> </head> <body topmargin="1
Time of Update: 2017-01-19
本文執行個體分析了JavaScript物件導向之私人靜態變數。分享給大家供大家參考,具體如下:大家知道,私人執行個體變數的原理是根據範圍。私人執行個體變數是在Javascript的function內部用var關鍵字實現,只在function內部有效。仿照這個,提出私人靜態變數的解決方案:<script language="javascript" type="text/javascript">var JSClass = (function() { var
Time of Update: 2017-01-19
defer和async特性相信是很多JavaScript開發人員"熟悉而又不熟悉"的兩個特性,從字面上來看,二者的功能很好理解,分別是"延遲指令碼"和"非同步指令碼"的作用。然而,以defer為例,一些細節問題可能開發人員卻並不一定熟悉,比如:有了defer特性的指令碼會延遲到什麼時候執行;內部指令碼和外部指令碼是不是都能夠支援defer;defer後的指令碼除了會順延強制之外,還有哪些特殊的地方等等。本文結合已有的一些文章以及MDN文檔中對兩個特性的闡述,對defer和async進行更全面的研
Time of Update: 2017-01-19
本文執行個體講述了javascript檢測flash外掛程式是否被禁用的方法。分享給大家供大家參考,具體如下:<!doctype html><html lang="en"><head><meta charset="UTF-8"><meta name="Generator" content="EditPlus®"><meta name="Author" content=""><meta
Time of Update: 2017-01-19
Javascript的基本概念 i. javascript語言是網頁中廣泛使用的一種指令碼語言。 ii. Javascript語言的特點:1. 由Netscape公司開發,基於對象和事件驅動並具有一定安全性的指令碼語言。 2. 特點:a) Javascript是一種指令碼語言,同時也是一種解釋性語言;b) Javascript是靠瀏覽器中的javascript解譯器來啟動並執行,與作業環境沒有關係;c)
Time of Update: 2017-01-19
今天碰到一個問題,怎樣把參數變更影響到函數外部,如:<script> var myname = "wood"; A(myname); document.write(myname); function A(n) { n = "Yao";
Time of Update: 2017-01-19
在觸發DOM上的某個事件時,會產生一個事件對象event。DOM中的事件對象相容DOM的瀏覽器會將一個event對象傳入到事件處理常式中。event對象包含與建立它的特定事件有關的屬性和方法。除法的事件類型不一樣,可用的屬性方法就不一樣。不過,所有的事件都會有下表列出的成員。下面列出了 2 級 DOM 事件標準定義的屬性: bubbles: 返回布爾值,指示事件是否是起泡事件類型。 cancelable: 返回布爾值,指示事件是否可擁可取消的預設動作。 currentTarget:
Time of Update: 2017-01-19
一、JavaScript範圍JavaScript變數實際上只有兩種範圍,全域變數和函數的內部變數。在函數內部任何一個地方定義的變數(var scope)其範圍都是整個函數體。全域變數:指的是window對象下的對象屬性。範圍劃分:基於上下文,以函數進行劃分的,而不是由塊劃分的。強調兩點:1. 在同一範圍中,JavaScript是允許變數的重複定義,並且後一個定義將覆蓋前一個定義。2. 函數內部如果不加關鍵字var而定義的變數,預設為全域變數。var scope="global";
Time of Update: 2017-01-19
單例模式也稱作為單子模式,更多的也叫做單體模式。為軟體設計中較為簡單但是最為常用的一種設計模式。單例模式的介紹: 在應用單例模式時,產生單例的類必須保證只有一個執行個體的存在,很多時候整個系統只需要擁有一個全域對象,才有利於協調系統整體的行為。比如在整個系統的設定檔中,配置資料有一個單例對象進行統一讀取和修改,其他對象需要配置資料的時候也統一通過該單例對象來擷取配置資料,這樣就可以簡化複雜環境下的組態管理。