Time of Update: 2017-01-18
代碼類型只有一種形式就是function。 undefined:未定義,我們也可稱之為不存在,typeof(undefined)=undefined. null:為空白。undefined是不存在,而null是存在,但卻無。typeof(null)=object,但null又不是object,這就是null的神奇而獨特之處。 boolean:true or false。
Time of Update: 2017-01-18
typeof用以擷取一個變數的類型,typeof一般只能返回如下幾個結果:number,boolean,string,function,object,undefined。我們可以使用typeof來擷取一個變數是否存在,如 if(typeof a != "undefined"){},而不要去使用if(a)因為如果a不存在(未聲明)則會出錯,對於Array,Null等特殊對象使用typeof一律返回object,這正是typeof的局限性。
Time of Update: 2017-01-18
先看一下官方的解釋: call 方法 請參閱 應用於:Function 對象 要求 版本 5.5 調用一個對象的一個方法,以另一個對象替換當前對象。 call([thisObj[,arg1[, arg2[, [,.argN]]]]]) 參數 thisObj 可選項。將被用作當前對象的對象。 arg1, arg2, , argN 可選項。將被傳遞方法參數序列。 說明 call 方法可以用來代替另一個對象調用一個方法。call 方法可將一個函數的物件內容從初始的上下文改變為由 thisObj
Time of Update: 2017-01-18
offsetTop 可以獲得 HTML 元素距離上方或外層元素的位置,style.top 也是可以的,二者的區別是: 一、offsetTop 返回的是數字,而 style.top 返回的是字串,除了數字外還帶有單位:px。 二、offsetTop 唯讀,而 style.top 可讀寫。 三、如果沒有給 HTML 元素指定過 top 樣式,則 style.top 返回的是Null 字元串。 offsetLeft 與 style.left、offsetWidth 與
Time of Update: 2017-01-18
Test [Ctrl+A 全選 注:如需引入外部Js需重新整理才能執行]比較簡單的刪除數組中資料操作,更詳細的可以參考http://www.jb51.net/article/21505.htm
Time of Update: 2017-01-18
stringObject.charAt(index)方法:返回指定索引位置處的字元。 stringObject.slice(start,[end])和stringObject.substring(start,[end])方法都接受兩個參數,分別為子字串的起始位置和終止位置,返回這兩者之間的字串,不包括終止位置的那個字串。如果不指定第二個參數,則預設為字串的長度,即從起始位置到字串的末尾。
Time of Update: 2017-01-18
1.typeof 操作符.對於Function, String, Number ,Undefined 等幾種類型的對象來說,他完全可以勝任,但是為Array時 複製代碼 代碼如下: var arr=new Array("1","2","3","4","5"); alert(typeof(arr)); 你會收到一個object 的答案,有點讓人失望 . 2.instanceof 操作符,JavaScript中instanceof運算子會返回一個 Boolean
Time of Update: 2017-01-18
document.title //設定文檔標題等價於HTML的title標籤 document.bgColor //設定頁面背景色 document.fgColor //設定前景色彩(文本顏色) document.linkColor //未點擊過的連結顏色 document.alinkColor //啟用連結(焦點在此連結上)的顏色 document.vlinkColor //已點擊過的連結顏色 document.URL //設定URL屬性從而在同一視窗開啟另一網頁
Time of Update: 2017-01-18
RegExp類 RegExp對象的建構函式可以帶一個或兩個參數 第一個參數是描述需要進行匹配的模式字串,如果還有第二個參數,這個參數則制定了額外的處理指示。 一、基礎 1.1使用RegExp對象 test()方法 測試是否匹配。如果給定字串(只有一個參數)匹配這個模式,它就返回true,否則返回false 複製代碼 代碼如下:var sToMatch = "cat"; var reCat = /cat/; //Regex字面量使用Perl風格的文法
Time of Update: 2017-01-18
Dom基礎—建立表格 利用js來動態建立表格有兩種格式,appendChild()和insertRow、insertCell()。但第一種有可能在IE上有問題,所以推薦使用第二種。 1、insertRow(index):index從0開始 這個函數將新行添加到index的那一行前,比如insertRow(0),是將新行添加到第一行之前。預設的insertRow()函數相當於 insertRow(-1),將新行添加到表的最後。一般我們在使用的時候都是: objTable.insertRow
Time of Update: 2017-01-18
document對象下表列出了BOM的document對象的一些通用屬性:屬 性說 明alinkColor啟用的連結的顏色,如<body alink="color">定義的*bgColor頁面的背景顏色,如<body bgcolor="color">定義的*fgColor頁面的文本顏色,如<body
Time of Update: 2017-01-18
hasOwnProperty 方法 返回一個布爾值,指出一個對象是否具有指定名稱的屬性。 object.hasOwnProperty(proName) 相容WinIE5.5+, MacIE-, NN6+, Moz+, Safari- 參數 object 必選項。一個對象的執行個體。 proName 必選項。一個屬性名稱的字串值。 說明 如果 object 具有指定名稱的屬性,那麼 hasOwnProperty 方法返回 true;反之則返回
Time of Update: 2017-01-18
好,那就讓我們一步步打造,首先讓我們來看下繼承原本的寫法: 複製代碼 代碼如下: <script> var Person = function(name, age) { this.name = name; this.age = age; } Person.prototype.SayHello = function () { alert(this.name + "," + this.age); }; var Programmer = function (name, age,
Time of Update: 2017-01-18
代碼如下: 複製代碼 代碼如下: <script type="text/javascript"> var People = { name: "kym", age: 21, SayHello: function () { alert("Hello,My name is " + this.name + ".I am " + this.age); } } alert(People.name); People.SayHello(); </script>
Time of Update: 2017-01-18
我們先看看這樣一段代碼: 複製代碼 代碼如下: <script type="text/javascript"> var Person = function () { }; var p = new Person(); </script> 很簡單的一段代碼,我們來看看這個new究竟做了什嗎?我們可以把new的過程拆分成以下三步: <1> var p={}; 也就是說,初始化一個對象p。 <2>
Time of Update: 2017-01-18
首先我們繼續上文的代碼,我們來把這段代碼延伸一下: 複製代碼 代碼如下: <script type="text/javascript"> var Person = function (name, age) { this.name = name; this.age = age; this.Introduce = function () { alert("My name is " + this.name + ".I'm " + this.age); }; }; var person1 =
Time of Update: 2017-01-18
物件導向語言三大特點:繼承,多態,封裝,這三點雖然Javascript沒有提供天然的文法實現,但是我們都可以通過prototype等技巧來實現,因此這種說法似乎不過分。 在Javascript中,構造對象有三種方式: 1. 首先,我們要明確一個概念,Javascript是一種弱類型的語言,一方面體現在Javascript的變數,傳回型別都是沒有強型別約束的,另一方面,Javascript可以為對象任意添加屬性和方法。根據這個,我們可以寫出這樣的代碼: 複製代碼 代碼如下: <script
Time of Update: 2017-01-18
eval的作用其實很簡單,就是把一段字串傳遞給JS解譯器,由Javascript解譯器將這段字串解釋成Javascript代碼,並且執行他。 舉個最簡單的例子: 複製代碼 代碼如下: <script type="text/javascript"> eval("alert(1+1)"); </script> 很簡單,把字串解釋成JS代碼並執行,彈出2。
Time of Update: 2017-01-18
在Javascript,全域環境本身就一個對象。在瀏覽器宿主中這個對象是window,而當Javascript用於其它非瀏覽器的宿主,如嵌入式的環境中,可能會是其它的對象。 在這裡也糾正一個觀念,有很多人都認為Javascript只在瀏覽器中使用,其實Javascript也能在很多非Web情況下使用,據介紹Javascript在一些基於嵌入式的應用領域表現得也很出色,當然這些我也只是聽過傳說而已。 言歸正傳,當我們寫下:var i=1時,其實就是聲明了一個window範圍的一個變數。
Time of Update: 2017-01-18
就像我們可以寫成這樣的形式一樣: 複製代碼 代碼如下: function Hello() { alert("Hello"); } Hello(); var Hello = function () { alert("Hello"); } Hello(); 其實都是一樣的。 但是當我們對其中的函數進行修改時,會發現很奇怪的問題。 複製代碼 代碼如下: <script type="text/javascript"> function Hello() { alert("Hello"); }