Time of Update: 2017-01-19
介紹 低層次的語言,如C,具有低層級的記憶體管理命令,如:malloc()和free(),需要開發人員手工釋放記憶體。然而像javascript這樣的進階語言情況則不同,對象(objects, strings 等)建立的時候分配記憶體,當他們不在使用的時候記憶體會被自動回收,這個自動回收的過程被稱為記憶體回收。因為記憶體回收的存在,讓javascript等進階語言開發人員產生了一個錯誤的認識,以為可以不用關心記憶體管理。 記憶體生命週期
Time of Update: 2017-01-19
(1, 2, 3); // return 3; 很好奇,為什麼會返回3?這是什麼機制?圓括弧起到了什麼作用? (1, 2, 3, alert )("Amazing!"); // 這裡就更好玩了,居然可以直接調用alert ;經過測試,全域函數都可以通過這樣調用。 下面是關於 方括弧[] 的疑問: 在JS中,[]幾乎就和數組畫上了等號,但也有神奇的時候。 [1,2,3][1]; // return 2; 當然這種方法也經常使用,常用於數組的索引 和 調用的對象的響應屬性名稱存放在某個變數時。 [1
Time of Update: 2017-01-19
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: 2017-01-19
傳統方式 element.onclick = function(e){ // ... }; 1. 傳統綁定的優點非常簡單和穩定,可以確保它在你使用的不同瀏覽器中運作一致處理事件時,this關鍵字引用的是當前元素,這很有幫組2. 傳統綁定的缺點 傳統方法只會在事件冒泡中運行,而非捕獲和冒泡一個元素一次只能綁定一個事件處理函數。新綁定的事件處理函數會覆蓋舊的事件處理函數事件對象參數(e)僅非IE瀏覽器可用W3C方式
Time of Update: 2017-01-19
什麼是跨域JavaScript出於安全方面的考慮,不允許跨域調用其他頁面的對象。但在安全限制的同時也給注入iframe或是ajax應用上帶來了不少麻煩。這裡把涉及到跨域的一些問題簡單地整理一下:首先什麼是跨域,簡單地理解就是因為JavaScript同源策略的限制,a.com 網域名稱下的js無法操作b.com或是c.a.com網域名稱下的對象。更詳細的說明可以看下錶: URL 說明 是否允許通訊
Time of Update: 2017-01-19
1. window.event【分析說明】先看一段代碼複製代碼 代碼如下:function et(){ alert(event);//IE:
Time of Update: 2017-01-19
一、變數說到javascript中的delete操作符,還是首先要搞清楚javascript中的變數和屬性之間的關係。javascript中,變數和對象屬性關聯性非常微妙,甚至可以很多時候會被等同起來,因為 javascript
Time of Update: 2017-01-19
JavaScript的文法有多坑,算是眾人皆知了。先來上張圖代碼如下:複製代碼 代碼如下:{} + []; // 0[] + {}; // "[object Object]"{} + [] == [] + {}; // false({} + [] == [] + {}); // true這麼蛋疼的文法坑估計也只有 JavaScript
Time of Update: 2017-01-19
js解碼和編碼.html 複製代碼 代碼如下: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>javascript的編碼和解碼</title> <script
Time of Update: 2017-01-19
長久以來JavaScript相容性一直是Web開發人員的一個主要問題。在正式規範、事實標準以及各種實現之間的存在的差異讓許多開發人員日夜煎熬。為此,主要從以下幾方面差異總結IE和Firefox的Javascript相容性:複製代碼 代碼如下:一、函數和方法差異;二、樣式訪問和設定;三、DOM方法及對象引用;四、事件處理;五、其他差異的相容處理。一、函數和方法差異1. getYear()方法【分析說明】先看一下以下代碼:複製代碼 代碼如下:var year= new Date().getYear(
Time of Update: 2017-01-19
單引號和雙引號其實沒啥區別,看你自己習慣了 複製代碼 代碼如下: <input type="button" onclick="alert("1")">-------------------不正確 <input type="button" onclick="alert('1')">-------------------正確 雙引號中再用雙引號要這樣: var str = "abc\"def\"ghi" 用反斜線來禁止解析雙引號。
Time of Update: 2017-01-19
你可能會發現別人寫的代碼中有這麼一句:var that = this;,這代表什麼意思呢? 在javascript中,this代表的是當前對象。 var that=this就是將當前的this對象複製一份到that變數中。這樣做有什麼意義呢? 複製代碼 代碼如下: $('#zhetenga').click(function(){ //this是被點擊的#zhetenga var that = this; $('.zhetenga').each(function(){
Time of Update: 2017-01-19
複製代碼 代碼如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> <script type="text/javascript"> /*I總結: 1.函數名可以做變數使用,可以賦值,可以傳值 2.函數名當參數,傳遞給另一個函數 */
Time of Update: 2017-01-19
數組的定義:方法1.複製代碼 代碼如下:var mycars=new Array()mycars[0]="sharejs.com"mycars[1]="Volvo"mycars[2]="BMW"方法2.定義和初始化一起:複製代碼 代碼如下:var mycars=new Array("Saab","Volvo","BMW");或者:複製代碼 代碼如下:var mycars=["Saab","Volvo","BMW"];javascript二維數組,用一維數組來類比:方法1.複製代碼
Time of Update: 2017-01-19
1.認識數組數組就是某類資料的集合,資料類型可以是整型、字串、甚至是對象。Javascript不支援多維陣列,但是因為數組裡面可以包含對象(數組也是一個對象),所以數組可以通過相互嵌套實作類別似多維陣列的功能。1.1 定義數組聲明有10個元素的數組:複製代碼 代碼如下:var a = new Array(10);此時為a已經開闢了記憶體空間,包含10個元素,用數組名稱加 [下標] 來調用,例如 a[2] 但此時元素並未初始化,調用將返回 undefined。以下代碼定義了個可變數組,並進行賦值。
Time of Update: 2017-01-19
複製代碼 代碼如下:<html><head><script language="javascript" type="text/javascript">function MakeExcel(){var i,j; try { var xls = new ActiveXObject ( "Excel.Application"
Time of Update: 2017-01-19
簡單說,它有三個特徵:複製代碼 代碼如下:* 狀態總數(state)是有限的。* 任一時刻,只處在一種狀態之中。* 某種條件下,會從一種狀態轉變(transition)到另一種狀態。它對JavaScript的意義在於,很多個物件可以寫成有限狀態機器。舉例來說,網頁上有一個菜單元素。滑鼠移至上方的時候,菜單顯示;滑鼠移開的時候,菜單隱藏。如果使用有限狀態機器描述,就是這個菜單只有兩種狀態(顯示和隱藏),滑鼠會引髮狀態轉變。代碼可以寫成下面這樣:複製代碼 代碼如下:var menu = { /
Time of Update: 2017-01-19
Javascript 函數的四種調用模式1 函數模式 最普通的函數調用// 聲明式函數function fn1 () { console.log(this);}// 函數運算式函數var fn2 = function() { console.log(this);};// 調用 函數中this表示全域對象,在瀏覽器中就是指windowfn1(); //windowfn2(); //window 2
Time of Update: 2017-01-19
原生javascript代碼寫的2048遊戲。建議在Google瀏覽器下跑。2048.html 複製代碼 代碼如下:<!DOCTYPE><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>2048</title><link
Time of Update: 2017-01-19
本文執行個體總結了javascript設定文字框游標的方法。分享給大家供大家參考,具體如下:對於text//得到游標位置function getCaret(textbox) { var control = document.activeElement; textbox.focus(); var rang = document.selection.createRange(); rang.setEndPoint("StartToStart",textbox.createTextRange()