Time of Update: 2018-12-08
前言 JavaScript 不包含傳統的類繼承模型,而是使用 prototypal 原型模型。 雖然這經常被當作是 JavaScript 的缺點被提及,其實基於原型的繼承模型比傳統的類繼承還要強大。實現傳統的類繼承模型是很簡單,但是實現 JavaScript 中的原型繼承則要困難的多。 由於 JavaScript 是唯一一個被廣泛使用的基於原型繼承的語言,所以理解兩種繼承模式的差異是需要一定時間的,今天我們就來瞭解一下原型和原型鏈。 原型
Time of Update: 2018-12-08
前言 大家學JavaScript的時候,經常遇到自執行匿名函數的代碼,今天我們主要就來想想說一下自執行。 在詳細瞭解這個之前,我們來談瞭解一下“自執行”這個叫法,本文對這個功能的叫法也不一定完全對,主要是看個人如何理解,因為有的人說立即調用,有的人說自動執行,所以你完全可以按照你自己的理解來取一個名字,不過我聽很多人都叫它為“自執行”,但作者後面說了很多,來說服大家稱呼為“立即調用的函數運算式”。
Time of Update: 2018-12-08
要在二維空間類比出三維的效果,就需要把三維的座標轉換成二維座標。一個最基本依據是:東西越遠,看到大小就越小,座標越往消失點靠攏。 透視公式: scale = fl / (fl + z); scale是大小的比例值,0.0到1.0之間,fl是觀察點到成像面的距離,通常這個值是固定,z就是物件的三維空間中的z軸。
Time of Update: 2018-12-08
javaScript的類型函數(如Number/String/Boolean/Array/Date/Obejct等)都是繼承於 Function.prototype,所以給Function.prototype增加方法,同時也會影響到由它衍生的下層類型函數。如: 複製代碼 代碼如下:Function.prototype.addMethod=function(methodName,func){ if(!this[methodName]){
Time of Update: 2018-12-08
最近用javascript寫了一個簡單的計算機,自己測試感覺還好,先給大家觀賞下介面:介面就是這樣了,但是功能如何呢?現在只是個簡單的標準計算機,能進行加減乘除連續運算,以及求餘運算。如果發生被除數為零的錯誤,下面會給出提示,就像這樣:自己不知道寫的怎麼樣,但是對於新手來說,這肯定是一份大餐,裡面可以接觸到的東西不少,可以拿來學習。如果有高手看出裡面的疏漏、錯誤等望不吝賜教,給予指點。下面貼上代碼,希望裡面的注釋足夠多了。js部分: 複製代碼 代碼如下:var
Time of Update: 2018-12-08
複製代碼 代碼如下:var num = 0; var max = 10; function incrementNumber() { num++; //if the max has not been reached, set another timeout if (num < max) { setTimeout(incrementNumber, 500); } else { alert(“Done”); } } setTimeout(incrementNumber, 500);
Time of Update: 2018-12-08
功能模組: 程式設計: 1.可選擇遊戲時間,顯示倒計時 1.定義全域變數 2.可選擇英文字母出現個數 2.控制遊戲時間函數 3.統計得分 3.動畫效果 4.菜單選項 4.設定字母圖片出現的時間 5.判斷函數 6.遊戲菜單 7.遊戲時間選項
Time of Update: 2018-12-08
Object.prototype JavaScript是基於原型繼承的,任何對象都有一個prototype屬性。Object.prototype是所有對象的根,並且不可改變。 複製代碼 代碼如下:Object.prototype=null; alert(Object.prototype);//[object Object] Object與Object.prototype
Time of Update: 2018-12-08
我們建立的每一個函數都有一個prototype(原型)屬性,該屬性是一個對象,包含可以有特定類型的所有執行個體共用的屬性和方法。使用它的好處就在於可以讓所有對象執行個體共用它所包含的屬性和方法,也就是說,不必在建構函式中定義對象的資訊,而是可以將這些資訊,直接添加在原型對象中,如下所示,還是接著改寫前兩篇日誌中的例子: 複製代碼 代碼如下:function Employee() { }; Employee.prototype.Name = "Jim";
Time of Update: 2018-12-08
其實通俗的講類就是對象的模板,為了增強JS的OO特性,受mootoos架構啟發我們可以使用一個JSON對象來描述這個對象的模板。在這個模板中我們可以類比實現私人成員,受保護的成員,靜態成員。 這是一個在JS中類比的類定義文法,代碼中Class是一個自訂函數,它接受兩個參數,第一個參數是類名、第二個參數是一個JSON用來一個對象的模板。在這個JSON對象中其中欄位 "extend",,"initialize","static"
Time of Update: 2018-12-08
複製代碼 代碼如下:/* * base64編碼 */ var base64EncodeChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; var base64DecodeChars = new Array( -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
Time of Update: 2018-12-08
1.如果密碼少於5位,那麼就認為這是一個弱密碼。 2.如果密碼只由數字、小寫字母、大寫字母或其它特殊符號當中的一種組成,則認為這是一個弱密碼。 3.如果密碼由數字、小寫字母、大寫字母或其它特殊符號當中的兩種組成,則認為這是一個中度安全的密碼。 4.如果密碼由數字、小寫字母、大寫字母或其它特殊符號當中的三種以上組成,則認為這是一個比較安全的密碼。 複製代碼 代碼如下:<script language="javascript"> //CharMode函數 function
Time of Update: 2018-12-08
複製代碼 代碼如下:<select id="select" onchange="location.href='?page='+escape(this.value)+'';"> <option>請選擇</option> <option value="這是第一個">1</option> <option value="2">2</option> <option
Time of Update: 2018-12-08
測試例子: 複製代碼 代碼如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
Time of Update: 2018-12-08
原始的代碼: 複製代碼 代碼如下://將文字轉換為16進位 function textToSix(str) { return escape(str).replace(/%/g, function () { return "\\"; }).toLowerCase(); } 改進後的: 複製代碼 代碼如下://將文字轉換為16進位 function textToHex(str) { //escape對0-255以外的unicode值進行編碼時輸出%u****格式,例如:%u6267%u624b%u6
Time of Update: 2018-12-08
isNaN函數 返回一個 Boolean 值,指明提供的值是否是保留值 NaN (不是數字)。 NaN 即 Not a Number isNaN(numValue) 必選項 numvalue 參數為要檢查是否為 NAN 的值。 說明 假如值是 NaN, 那麼 isNaN 函數返回 true ,否則返回 false 。 使用這個函數的典型情況是檢查 parseInt 和 parseFloat 方法的輸入值。 還有一種辦法,變數可以與它自身進行比較。 假如比較的結果不等,那麼它就是 NaN 。
Time of Update: 2018-12-08
:CSS代碼: 複製代碼 代碼如下:<style type="text/css"> *{ margin:0; padding:0; font:10px tahoma; } #calender{ text-align:center; width:147px; font-size:10px; /*color: #27B0C1;*/ margin:12px 0 12px 6px; border-top:1px solid #EEEEEE; border-left:1px solid
Time of Update: 2018-12-08
在這篇文章中,作者介紹了7個在IE和Firefox中不同的JavaScript句法。 1. CSS "float" 值 訪問一個給定CSS 值的最基本句法是:object.style.property,使用駝峰寫法來替換有串連符的值,例如,訪問某個ID為"header"的<div>的 background-color值,我們使用如下句法: document.getElementById("header").style.backgroundColor= "#ccc";
Time of Update: 2018-12-08
它的低學習門檻讓很多人都稱它為學前指令碼語言,它另外一個讓人嘲笑的東西是動態語言的概念是偏偏使用了高標準的待用資料類型。其實,你和Javascript都站錯了立場,而現在,你讓Javascript很生氣。這裡有五個原因能說明你的Javascript技術很爛。 1. 你沒有使用命名空間。
Time of Update: 2018-12-08
例如: new Boolean(false) 會返回一個對象,該對象有一個 valueOf 方法會返回被封裝的值。這其實完全沒有必要,並且有時還令人困惑。不要使用 new Boolean、 new Number 或 new String。 此外也請避免使用 new Object 和 new Array。可使用 {} 和 [] 來代替。 --------------------------------------------------------------------------------