Time of Update: 2018-12-08
本人第一次看到這個東東的時候,以為就是“變相”的普通參數,只不過不用在定義函數的時候明確聲明而已。 不過,代碼是廉價的(Code is cheap.)看代碼: function funcTest(a, b) { alert(a); alert(b); for ( var i = 0 ; i < arguments.length; i ++ ) { alert(arguments[i]); } } function test() { funcTest( 1 , 2 , 3 ); //
Time of Update: 2018-12-08
還有,“通過事件機制,可以將類設計為獨立的模組,通過事件對外通訊,提高了程式的開發效率。”。相信C#程式員對事件的好處是深有體會的。好了,Code is cheap.看代碼: function class1() { // 最簡單的事件設計模式 } class1.prototype = { show: function () { this .onShow(); }, onShow: function () { } } function test() { var obj = new class1()
Time of Update: 2018-12-08
再記錄一下 Javascript訪問樣式表 Javascript可以訪問網頁中元素的style屬性,例如: <div id="main" style="background-color:red"></div> 通過js訪問style屬性 alert(document.getElementById("main").style.backgroundColor); 通過js改變style屬性
Time of Update: 2018-12-08
arrayobj.sort(sortfunction); 參數:sortFunction 可選項。是用來確定元素順序的函數的名稱。如果這個參數被省略,那麼元素將按照 ASCII 字元順序進行升序排列。 sort 方法將 Array 對象進行適當的排序;在執行過程中並不會建立新的 Array 對象。 如果為 sortfunction 參數提供了一個函數,那麼該函數必須返回下列值之一: 負值,如果所傳遞的第一個參數比第二個參數小。 零,如果兩個參數相等。 正值,如果第一個參數比第二個參數大。
Time of Update: 2018-12-08
我們看到這裡繼承的概念是多麼的直白,“拷貝一個類的prototype 到另外一個類”,好,Code is cheap,看代碼: function class1() { } function class2() { } class2.prototype = class1.prototype; class2.moreProperty1 = " class 2 additional string " ; class2.moreMethod1 = function () { alert( " class
Time of Update: 2018-12-08
複製代碼 代碼如下:var str = new Array(); str[0] = '<li id="domain-{0}">'.replace('{0}', 'domainid'); str[1] = 'domainname'; str[2] = '<input type="hidden" name="domainids" value="{0}">'.replace('{0}', 'domainid'); str[3] = '</li>';
Time of Update: 2018-12-08
很長一段時間以來(這裡本人要幸災樂禍地說),js是“一種點綴的作用,完成很有限的功能,諸如表單驗證之類,其語言本身也一直被當作過程化的語言使用,很難完成複雜的功能。”。但是(這裡本人要苦大仇深、痛心疾首地說),“而Ajax的出現使得複雜指令碼成為必需的組成部分,這就對 JavaScript 程式設計提出了新的要求,很多Ajax應用開始利用JavaScript物件導向的性質進行開發,使邏輯更加清晰。事實上,JavaScript
Time of Update: 2018-12-08
JavaScript/CSS/DOM基礎 第0課 - 內容概述 第1課 - JavaScript背景知識 第2課 - JavaScript基礎 第3課 - CSS基礎 第4課 - CSS進階 第5課 - DOM模型 JavaScript開發進階 第6課 - JavaScript事件 第7課 - 表格與表單 第8課 - Javascript調試與最佳化 第9課 - Ajax jQuery應用 第10課 -
Time of Update: 2018-12-08
今天總算把部門多選的效果整出來 見圖: 先共用核心代碼: 1:js指令碼 複製代碼 代碼如下:var treeHTML = ""; var checkList = new Array(); /*only init here*/ var barString = "└";/*┝└*/ var degreeString = " "; function makeTree(id,text,value,parentid,isCheck) { this.id = id; this.text = text;
Time of Update: 2018-12-08
在我 上一篇文章 (譯文 ) 中,談到了各個瀏覽器究竟會在什麼情況下彈出指令碼失控提示,對於Internet Explorer 來說,當瀏覽器執行了數量過多的語句時就會停止執行指令碼,而其他的瀏覽器,則是持續執行指令碼超過一定時間的時候就會給出提示。而我們要探討的核心問題,不是這些瀏覽器如果探測失控的指令碼,而是我們如何才可以讓指令碼啟動並執行更快一些,從而避免這些警告 。 指令碼失控基本上有以下四個方面的原因: 在迴圈中執行了太多的操作。 臃腫的函數體 過多的遞迴 過多的 DOM 調用
Time of Update: 2018-12-08
複製代碼 代碼如下://傳入從資料庫中取出的日期類型資料 function getformatdate(d){ var formate_datetime; var array = d.split(" "); var date = array[0]; var time = array[1]; var array_date = date.split("-"); var array_time = time.split(":"); var second = array_time[2].split("."
Time of Update: 2018-12-08
網上搜尋到的代碼,做了一些修改該, 修正無法自訂色彩,修正IE8 下錯誤,以及其他小BUG 相容IE6~8以及Firefox 可以自訂 // 提示視窗標題高度 // 提示視窗的邊框顏色 // 提示視窗的標題顏色 // 提示視窗的標題背景色 // 提示內容的背景色 // 提示內容文字對齊 功能 可以彈出一個大DIV遮住頁面(IE下 透明) 然後在螢幕中央顯示顯示一個小DIV 可用作功能提示 操作提示 以及公告等 提示內容可以使帶HTML標記的文字,也可是一個頁面連結 複製代碼
Time of Update: 2018-12-08
這篇著重講第一個原因。最後給出了一個開發模式,替換傳統的迴圈結構,可以完全避免指令碼失控的狀況發生。原文標題:Speed up your JavaScript, Part 1 原文作者:Nicholas C. Zakas 在我 上一篇文章 (譯文 ) 中,談到了各個瀏覽器究竟會在什麼情況下彈出指令碼失控提示,對於Internet Explorer
Time of Update: 2018-12-08
Math對象Math對象是在高中數學課就學過的內建對象。它知道解決最複雜的數學問題的所有公式,如果給它要處理的數字,即能計算出結果。Math對象有幾個屬性,主要是數學界的專用值。下表類出了這些屬性:屬 性說
Time of Update: 2018-12-08
setTimeout(script,millisecond); 是從現在算起多少微秒後運行該代碼(只運行一次) setInterval(script,millisecond); 是每隔多少微秒運行一次代碼 樣本: 1.執行一次 秒[Ctrl+A 全選 注:如需引入外部Js需重新整理才能執行]2.複製執行 3 秒[Ctrl+A 全選 注:如需引入外部Js需重新整理才能執行]setTimeout也可以做成重複執行 秒[Ctrl+A 全選 注:如需引入外部Js需重新整理才能執行]
Time of Update: 2018-12-08
公用、受保護和私人範圍在傳統的物件導向程式設計中,主要關注於公用和私人範圍。公用範圍中的對象屬性可以從對象外部存取,即開發人員建立對象的執行個體後,就可使用它的公用屬性。而私人範圍中的屬性只能在對象內部訪問,即對於外部世界來說,這些屬性並不存在。這也意味著如果類定義了私人屬性和方法,則它的子類也不能訪問這些屬性和方法。最近,另一種範圍流行起來,即受保護範圍。雖然在不同語言中,受保護範圍的應用的規則不同,但一般說來,它都用於定義私人的屬性和方法,只是這些屬性和方法還能被其子類訪問。對ECMAScr
Time of Update: 2018-12-08
實際上,幾何形狀只有兩種,即橢圓形(是圓形的)和多邊形(具有一定數量的邊)。圓是橢圓形的一種,它只有一個焦點。三角形、矩形和五邊形都是多邊形的一種,具有不同數量的邊。正方形是矩形的一種,所有的邊等長。這就構成了一種完美的繼承關係。在這個例子中,形狀(Shape)是橢圓形(Ellipse)和多邊形(Polygon)的基類(base class)(所有類都由它繼承而來)。橢圓具有一個屬性foci,說明橢圓具有的焦點的個數。圓形(Circle)繼承了橢圓形,因此圓形是橢圓形的子類(subclass),
Time of Update: 2018-12-08
什麼是JavaScript JavaScript是一種基於對象和事件驅動的用戶端指令碼語言。 JavaScript最初的設計是為了檢驗HTML表單輸入的正確性。 JavaScript起源於Netscape公司的LiveScript語言。 JavaScript的曆史
Time of Update: 2018-12-08
選定基類後,就可以建立它的子類了。是否使用基類完全由你決定。有時,你可能想建立一個不能直接使用的基類,它只是用於給子類提供通用的函數。在這種情況下,基類被看作抽象類別。儘管ECMAScript並沒有像其他語言那樣嚴格地定義抽象類別,但有時它的確會建立一些不允許使用的類。通常,我們稱這種類為抽象類別。建立的子類將繼承超類的所有屬性和方法,包括建構函式及方法的實現。記住,所有屬性和方法都是公用的,因此子類可直接存取這些方法。子類還可添加超類中沒有的新屬性和方法,也可以覆蓋超類中的屬性和方法。4.2.
Time of Update: 2018-12-08
Global對象Global對象是ECMAScript中最特別的對象,因為實際上它根本不存在。如果嘗試編寫下面的代碼,將得到錯誤:錯誤訊息顯示Global不是對象,但剛才不是說Global是對象嗎?沒錯。這裡需要理解的主要概念是,在ECMAScript中,不存在獨立的函數,所有函數都必須是某個對象的方法。本書前面介紹的函數,如isNaN()、isFinite()、parseInt()和parseFloat()等,看起來都像獨立的函數。實際上,它們都是Global對象的方法。而且Global對象的