Time of Update: 2017-01-19
建立 var d=new Date(); 要注意的是在JavaScript中月份的值是從0到11(0表示1月)。 設定日期和時間值 設定日期和時間值有兩種方法: 1、只聲明距離1970年1月1日淩晨12點的毫秒數 a、直接用距離1970年1月1日淩晨12點的毫秒數 var d=new Date(0); b、parse方法: parse方法接受字串為參數,把該字串轉換成日期值,返回的是毫秒數。 例如為2012年2月27日建立Date對象: var d=new
Time of Update: 2017-01-19
建立Array對象 複製代碼 代碼如下: //one var aValues=new Array(); //two var aValues=new Array(20); //three var aColors=new Array(); aColors[0]="red"; aColors[1]="green"; aColors[2]="blue"; //four var aColors=new Array("red","green","blue"); //five var
Time of Update: 2017-01-19
Function類 定義 Function類可以表示開發人員定義的任何函數,用Function類直接建立函數的文法如下: var function_name=new Function(agrument1,agrument2,...,argumentN,function_body); 每個argument都是一個參數,最後一個參數是函數主體(要執行的代碼)。 樣本: 複製代碼 代碼如下: function sayHi(sName,sMessage){ alert("Hello
Time of Update: 2017-01-19
if語句 文法: 複製代碼 代碼如下: if(condition){ statement1; } else{ statement2; } 迭代語句 1、do-while語句 文法: 複製代碼 代碼如下: do{ statement }while(expression); 2、while語句 文法: 複製代碼 代碼如下: while(expression){ statement } 3、for語句 文法: 複製代碼 代碼如下:
Time of Update: 2017-01-19
2.9.5、加性運算子 加性運算子(即加號和減號)通常是最簡單的運算子,不過在ECMAScript中,每個加性運算子都有大量的特殊行為。 1、加法運算子: 複製代碼 代碼如下: var iResult=1+2; console.log(iResult);//outputs 3 特殊性: 某個運算數是NaN,結果為NaN Infinity加Infinity,結果為Infinity -Infinity加-Infinity,結果為-Infinity
Time of Update: 2017-01-19
2.9 運算子 2.9.1、一元運算子 一元運算子只有一個參數,即要操作的對象或值。 1、delete:刪除對以前定義的對象屬性或方法的引用,但此運算子不能刪除開發人員未定義的屬性和方法。樣本: 複製代碼 代碼如下: var o=new Object; o.name="Nicholas"; o.show=function(){ return "test"; }; console.log(o.name); //outpus Nicholas console.log(o.show()); /
Time of Update: 2017-01-19
2.7 類型轉換 1、轉換成字串 所有對象都有toString()方法可以轉換成字串,要注意的是Number類型的toString()方法,它有兩種模式,即預設模式和基模式,採用預設模式toString()方法只是用相應的字串輸出對應的10進位數字值,用基模式可以用不同的基輸出數字。樣本: 複製代碼 代碼如下: var iNum1=10; var iNum2=10.0; var iNum3=10; alert(iNum1.toString()); //outpus "10"
Time of Update: 2017-01-19
2.8 參考型別 1、Object類 ECMAScript中的所有類都是由Object類繼承而來。 Object類具有下列屬性: Constructor:對建立對象的函數的引用(指標),對於Object類,該指標指向原始的Object()函數 Prototype:對該對象的對象原型的引用。 Object類還有幾個方法: HasOwnProperty(property):判斷對象是否有某個特定的屬性。必須用字串指定該屬性值
Time of Update: 2017-01-19
2.6 原始類型 ECMAScript有5種原始類型(primitive type),即Undefined、Null、Boolean、Number和String。ECMAScript提供了typeof來判斷值的類型。 1、typeof運算子: 複製代碼 代碼如下: var sTemp="test string"; alert(typeof sTemp);//outpus "string" alert(typeof 95);//outpus "number"
Time of Update: 2017-01-19
2.1 文法 區分大小寫、變數弱類型、行尾分號可有可無、注釋為雙斜線、括弧表明代碼塊 2.2 變數 變數用var聲明,變數的命名規則:第一個字元必須是字母、底線或貨幣符號;餘下的字元可以是底線、貨幣符號或任何字母或數字字元。 變數命名規範: Camel標記法:首字母小寫,接下來的單詞都以大寫字母開頭。例如:var myTestValue=0,mySecondTestValue="hi"; Pascal標記法:首字母大寫,接下來的單詞都以大寫字母開頭。例如:var
Time of Update: 2017-01-19
UglifyJS UglifyJS是構建於nodeJS伺服器端之上的一個代碼壓縮公用程式,目前jQuery使用它來壓縮,壓縮效果比較好。 GitHub首頁:http://github.com/mishoo/UglifyJS/線上使用:http://marijnhaverbeke.nl/uglifyjs使用方法:從http://nodejs.org下載nodejs,用到的是node.exe 再從UglifyJS的GitHub首頁下載它的最新版本 複製node.exe到UglifyJS的bin目錄
Time of Update: 2017-01-19
1. 取整同時轉成數值型: '10.567890′|0 結果: 10 '10.567890′^0 結果: 10 -2.23456789|0 結果: -2 ~~-2.23456789 結果: -2 2. 日期轉數值: var d = +new Date(); //1295698416792 3. 類數組對象轉數組: var arr = [].slice.call(arguments) 4. 漂亮的隨機碼: Math.random().toString(16).substring(2);
Time of Update: 2017-01-19
與動態指令碼類似,所謂動態樣式是指在頁面剛載入時不存在的樣式;動態樣式是在頁面載入完成後動態添加到頁面中。 我們以下面這個典型的<link>元素為例: <link rel="stylesheet" type="text/css" href="style.css">使用DOM代碼可以很容易的動態建立出這個元素: 複製代碼 代碼如下: var link = document.createElement("link"); link.rel = "stylesheet";
Time of Update: 2017-01-19
javascript插入樣式在前端開發中應用比較廣泛,特別是在修改前端表現和頁面換膚的時候。最近做的這個任務是使用者在別人的網站上點擊一個按鈕,就會在別的網站頁面下插入一個指令碼,執行,這其中包含了樣式的插入。 一般情況下javascript動態插入樣式有兩種,一種頁面中引入外部樣式,在<head>中使用<link>標籤引入一個外部樣式檔案,另一種是在頁面中使用<style>標籤插入頁面樣式(這裡說的不是style屬性)。 一、頁面中引入外部樣式: 在<
Time of Update: 2017-01-19
簡單的說就是改變函數執行的上下文,這是最基本的用法。兩個方法基本區別在於傳參不同。 call(obj,arg1,arg2,arg3);call第一個參數傳對象,可以是null。參數以逗號分開進行傳值,參數可以是任何類型。 apply(obj,[arg1,arg2,arg3]);apply第一個參數傳對象,參數可以是數組或者arguments 對象。 這兩個方法通常被用來類的繼承和回呼函數: 作用一、類的繼承: 先來看這個例子: 複製代碼 代碼如下: function
Time of Update: 2017-01-19
js操作xml源,作為頁面的動態新聞 參考JS源碼如下(存為rss.js檔案): 複製代碼 代碼如下: var main = document.getElementById("content").getElementsByTagName("DIV"); /* * 目前的目錄下面有一個名為xml的子檔案夾,下面引用的源儲存在目錄下。 * 下面每一行的冒號前面是檔案名稱,後面是xml源地址(可以從源址下載得到xml檔案,下載後儲存為對應檔案名稱) *
Time of Update: 2017-01-19
如下 複製代碼 代碼如下:var a = 3; 實際有兩個步驟: 1 初始化a為undefined 2 a賦值3 因此會出現一些“匪夷所思”的現象,即JS中變數可以先使用後聲明。這在Java中是不允許的。 複製代碼 代碼如下:System.out.println(a); int a = 1; 編譯通不過。但JS可以,如下 複製代碼 代碼如下:alert(a); var a; 雖然是undefined,但不會報錯。說明a的確聲明了,且為undefined。
Time of Update: 2017-01-19
複製代碼 代碼如下: var a; // 聲明一個變數,標識符為a function a() { // 聲明一個函數,標示符也為a } alert(typeof a); 顯示的是“function”,即function的優先順序高於var。 有人覺得這是代碼順序執行的原因,即a被後執行的funcion覆蓋了。好,將它們調換下。 複製代碼 代碼如下: function a() { } var a; alert(typeof a); 結果仍然顯示的是“function”而非“undefined”
Time of Update: 2017-01-19
複製代碼 代碼如下:var date1=new Date(dateTimes[z][1]); 在Firefox下 可以正常取得時間,在IE7下 卻是 NaN。糾結老長時間,放棄了new date 然後再老外的論壇中找了一段段代碼可以相容所有瀏覽器的格式化日期代碼: 複製代碼 代碼如下: function NewDate(str) { str = str.split('-'); var date = new Date(); date.setUTCFullYear(str[0], str[1] -
Time of Update: 2017-01-19
DateAdd函數: 複製代碼 代碼如下: function DateAdd(interval,number,date){ switch(interval.toLowerCase()){ case "y": return new Date(date.setFullYear(date.getFullYear()+number)); case "m": return new Date(date.setMonth(date.getMonth()+number)); case "d": return