Time of Update: 2018-12-08
21世紀開運網www.21kaiyun.com源碼中大量使用了this這個Javascript關鍵字JavaScript函數調用規則一 (1)全域函數調用: function makeArray( arg1, arg2 ){ return [this , arg1 , arg2 ]; } 這是一個最常用的定義函數方式。相信學習JavaScript的人對它的調用並不陌生。 調用代碼如下: makeArray('one', 'two'); // => [ window, 'one',
Time of Update: 2018-12-08
今天想談談javascript中的prototype. 通常來說,javascript中的對象就是一個指向prototype的指標和一個自身的屬性列表。javascript建立對象時採用了寫時複製的理念。只有構造器才具有prototype屬性,原型鏈繼承就是建立一個新的指標,指向構造器的prototype屬性。prototype屬性之所以特別,是因為javascript時讀取屬性時的遍曆機制決定的。本質上它就是一個普通的指標。 構造器包括: 1.Object2.Function3.Array4.
Time of Update: 2018-12-08
看到一句Javascript的代碼:function test(){ var args = Array.prototype.slice.call(arguments);}第一感覺是這句代碼不是多餘嗎?這切分後不是返回一樣的數組嗎?不過又感覺沒人這麼蛋疼做這麼無聊的事情吧,於是Google,於是發現,我錯了!因為arguments不是一個數組對象,雖然它有length屬性,並且你在firebug或者Chrome的控制台log出來的結果和數組一樣。function testArguments(
Time of Update: 2018-12-08
Javascript的正則分組不支援命名,只好自己搞了一個。先把命名存入數組,然後匹配。唉~~~有更好的解決方案嗎?代碼:var route = '/{controller}/{action}/{id}', url = '/home/index/2';groupRE(route, url); // ==> {controller:'home', action:'index', id:'2'}/** @re: string, e.g.: '/{controller}/{action}/
Time of Update: 2018-12-08
複製代碼 代碼如下:<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>JavaScript</title> </head> <body> <script language="javascript"> var n = 0; function showTable(
Time of Update: 2018-12-08
此文適合JavaScript入門級選手閱讀,高手就可以飄過了。 先扯點閑話。在中國,有這麼一種現象:不管什麼詞或者概念,總會有些人把這些東西解釋的神乎其神,貌似搞得別人聽不懂就覺得自己很厲害的樣子。其實不知道有多2。我個人比較崇尚簡潔明了。什麼詞,什麼概念,如果你能用簡短的一兩句話讓大家聽明白,這才是本事。好了,閑話不扯了,進入正題。 在JavaScript裡什麼叫Callback“回呼函數”,用我的話來講就是把方法b當做一個參數傳遞個方法a,當方法a執行完後執行另外一個指定函數(這裡是b函數)
Time of Update: 2018-12-08
擴充Code:複製代碼 代碼如下:var blogModule = (function (my) { my.AddPhoto = function () {//添加內部代碼 }; return my;}(blogModule));Say:將自身傳進方法,然後實現了方法的擴充,有點象零件組裝啊Code:複製代碼 代碼如下:var blogModule = (function (my) {var oldAddPhotoMethod = my.AddPhoto; my.AddPhoto =
Time of Update: 2018-12-08
第一種方法: 複製代碼 代碼如下:<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html>
Time of Update: 2018-12-08
示範地址: http://www.ihuxu.com/project/gcdmove/調用樣本: var GCDM = gcdMove(oDiv,100,0); GCDM.startMove();//開始運動 GCDM.stopMove();//結束運動 該段JS代碼已經封裝好了,代碼如下: 簡要說明 - obj為要改動的對象元素,通常為某個div;iSpeedX,iSpeedY為div出師的橫向(右側),豎向(下)的初始速度,當然也可以設為零。 複製代碼 代碼如下:/** * @Desc
Time of Update: 2018-12-08
javasscript刪除數組的3種方法1,用shift()方法shift:刪除原數組第一項,並返回刪除元素的值;如果數組為空白則返回undefinedvar chaomao=[1,2,3,4,5]var chaomao.shift()//得到1alert(chaomao)//[2,3,4,5]2,用pop()方法pop:刪除原數組最後一項,並返回刪除元素的值;如果數組為空白則返回undefinedvar chaomao=[1,2,3,4,5]var
Time of Update: 2018-12-08
添加CSS的方式有行內式、嵌入式、外鏈式、匯入式 a)動態引入樣式表檔案: 複製代碼 代碼如下:function loadLink(url){ var link = document.createElement("link"); link.type = "text/css"; link.rel = "stylesheet"; link.href = url; var head = document.getElmentsByTagName("head")[0]; head.appendChild(
Time of Update: 2018-12-08
複製代碼 代碼如下:<script type="text/javascript" language="javascript"> function CCCC(){ var File_NAME=""; var count=0; if(document.frames("myFrame").document.all.length){ for(var i=0;i<document.all.length;i++){
Time of Update: 2018-12-08
當建立一個類的時候,如果希望下面new出來的每個類都擁有一些通用的變數或者其他的函數,這個this關鍵字這是最好的方式。當然,既然是物件導向的語言,必然存在存取權限的問題,這裡也和this關鍵字息息相關。下面我們來示範一個例子來說明一下這個類的存取權限的問題.複製代碼 代碼如下://Person類 function Person(){ var name="abc";//var聲明的都是類內部的私人變數,外部無法訪問 var age = 20;
Time of Update: 2018-12-08
DHTML:它不是一門新的語言,而是HTML、CSS和JavaScript這三者相結合的產物,DHTML包含如下3個含義: (1)通過HTML把網頁標記為各個元素 (2)利用CSS設計項目之間的排版樣式,並控制各個標記的位置 (3)使用js來控制各個標記JavaScript由三部分組成:(1)
Time of Update: 2018-12-08
1:把數字轉換為字串的方法複製代碼 代碼如下: var string_value = String(number); string_value = number.toString(); var n = 17; binary_string = n.toString(2); //Evaluates to "10001" octal_string = "0" + n.toString(8);
Time of Update: 2018-12-08
Javascript中標籤(label)是一個標識符。標籤可以與變數重名,它是一個獨立的文法元素(既不是變數,也不是類型),其作用是標識”標籤化語句(labeled statement)”標籤聲明標籤(label)可以聲明在任何一個語句前面,或者語句塊前,以使得語句或語句塊被“標籤化(labeled)”。label1:複製代碼 代碼如下: myFun1();label2:{ var i = 1, j = 2; var k = i +
Time of Update: 2018-12-08
Email:longsu2010 at yeah dot net js String的replace函數的函數簽名如下: replace(match/* 字串ORRegex */, replacement/* 字串OR函數 */) 作用是將源自符串中的match替換為replacement並返回替換後的字串。 如果第一參數是字串就沒什麼好說的了,但是要記住此時只在源自符串替換一次match(第一次)函數就執行完成了。所以第一參數通常是一個Regex,舉例如下: replace(/a/g, "b"
Time of Update: 2018-12-08
複製代碼 代碼如下:function SetIFrameHeight(down) { var Sys = {}; var ua = navigator.userAgent.toLowerCase(); var s; (s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] : (s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s[1] : (s = ua.match(/chrome\/([\d.]+)/)
Time of Update: 2018-12-08
動態構建Regex複製代碼 代碼如下: new RegExp( Expr.match[ type ].source + (/(?![^\[]*\])(?![^\(]*\))/.source) )來自sizzle,動態構建正則時,這樣做避免了字元轉義。更靈活和巧妙的數字補零複製代碼 代碼如下:function prefixInteger(num, length) { return (num / Math.pow(10, length)).toFixed(length).substr(2);}
Time of Update: 2018-12-08
一般情況下兩者的調用結果是一樣的,但是還是有區別的。 第一種方式: 複製代碼 代碼如下:function a(){ alert('old'); } var b=a; function a(){ b(); alert('new'); } a();//瀏覽器就會出現記憶體溢出的情況 第二種方式: 複製代碼 代碼如下:function a(){ alert('old'); } var b=a; var a=function(){ b(); alert('new'); }