Time of Update: 2017-01-19
這種模式的作用在於確保對象屬性的真正私人化, 我們無法直接存取對象的狀態, 只能通過特權方法來進行操作. 下面直接來個例子吧. 複製代碼 代碼如下: var person = function(cfg) { var that = {}; that.getName = function() { return cfg.name || 'unknow name'; }; // 性別 預設男性 that.getGender = function() { return cfg.gender ||
Time of Update: 2017-01-19
js一共有9種資料類型,分別是:未定義(undefined)、空(null)、布爾型(boolean)、字串(string)、數值(number)、對象(object)、引用(reference)、列表(completion)。其中後3種僅僅作為JS運行中間結果的資料類型,因此不能在代碼中使用,下面先講一下字串String: 字串由零個或者多個字元構成。字元可以包括字母、數字、標點符號和空格。字 符串必須放在單引號或雙引號內: --------------------------------
Time of Update: 2017-01-19
javascrpit的基本概念: 1)區分大小寫 與JAVA一樣,JS中的變數,函數,運算子以及其他的一切東西都是區分大小寫,例如:變數MyTag與MYTAG是兩個不同的變數。 2)弱類型變更。所以謂弱類型變數指的是JS中變數無特定類型,不像C那樣。定義變數只用“var",並可以將其初始化為任意的值,這樣就可以隨便的改變變數所儲存資料的類型,不般不推薦; 例:var age=25; var myName="zhangsan"; 3) 每行結尾的分號可有可無; 例: var a=2 var b=3
Time of Update: 2017-01-19
更直觀一點: --------------------- 例:var a=32.6; var b=67; var c=9e5; --------------------- 對於數實值型別,如果希望轉換為科學計數法,可以採用toExponential()方法,該方法接受一個參數,表示要輸出小數倍數: --------------------- 例: var a=78.9; alert(a.toExponential(1)); --------------------- js 中對數值的格式化問題
Time of Update: 2017-01-19
1. jQuery – Javascript FrameworkjQuery 是最流行的 JavaScript 架構,它簡化了HTML 文檔遍曆、事件處理、動畫和Ajax互動。2. Dojo Javascript FrameworkDojo強大的核心使Web開發更加敏捷,它擁有出色的UI工具庫,號稱 Unbeatable JavaScript Tools。3. Sencha Ext JS4
Time of Update: 2017-01-19
IME應當如何觸發鍵盤事件呢?是每一下擊鍵都觸發一次事件,還是選詞完畢才觸發事件呢?整句輸入又該如何觸發事件呢?不同的作業系統和不同的瀏覽器對此有不同的看法。在最糟糕的情況下,使用者使用IME後瀏覽器就只觸發一次 keydown ,之後就沒有任何的鍵盤事件了。這對於 Suggestion 控制項的實現來說是個大問題,因為 Suggestion 控制項需要監聽文本輸入框的變化,而事件是最準確也最節省計算資源的做法,如果換成輪詢的話效能就可能受到影響。 首先,要監聽啟用IME後的擊鍵事件應當使用
Time of Update: 2017-01-19
var ie = !-[1,]; 這句代碼在IE9之前曾被稱為世界上最短的IE判定代碼。代碼雖短但確包含了不少javascript基礎知識在裡面。在這個例子中代碼執行時會先調用數組的toString()方法 ,執行[1,].toString()在IE6,7,8中將會得到“1,”。然後運算式就變為!-“1,”。再嘗試把“1,”轉換成數實值型別得到NaN
Time of Update: 2017-01-19
複製代碼 代碼如下:<!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8"> <title>flash download</title> </head> <body> <object id="movie" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
Time of Update: 2017-01-19
複製代碼 代碼如下: var EasyPager = function(wrap,pageCount,currPage){ var d = document ,el = function(tag,inner,click,css){ tag = d.createElement(tag); inner && (tag.innerHTML = inner); click && (tag.onclick = click); css && (tag.className=css); return tag;
Time of Update: 2017-01-19
複製代碼 代碼如下: var YX = { //得到JS內建資料類型的類型,傳回值包括[Date,RegExp,Number,String,Array,Boolean,Function,null,undefined,Object] getType : function(obj){ return obj == null ? obj + "" : Object.prototype.toString.call(obj).slice(8,-1); } //建立一個簡單的類 ,createClass :
Time of Update: 2017-01-19
首先看一下基礎知識: 1、什麼是cookie cookie 是儲存於訪問者的電腦中的變數。每當同一台電腦通過瀏覽器請求某個頁面時,就會發送這個 cookie。你可以使用 JavaScript 來建立和取回 cookie 的值 2、有關cookie的例子: •名字 cookie 當訪問者首次訪問頁面時,他或她也許會填寫他/她們的名字。名字會儲存於 cookie 中。當訪問者再次訪問網站時,他們會收到類似 "Welcome John Doe!" 的歡迎詞。而名字則是從 cookie
Time of Update: 2017-01-19
javascript中最有特色而又讓你困惑的function算一個了 下面看一下常用操作 複製代碼 代碼如下: function doit(){ ..... } doit(); javascript中的函數我們可以把它當作方法使用 複製代碼 代碼如下: var obj=new Object(); obj.say=function(){ ..... } obj.say(); 而function實際上就是對象(即Function類型的執行個體) 複製代碼 代碼如下:
Time of Update: 2017-01-19
摸索過程中,看見這樣的字元:"\155",用來代替字元"m"。為什嗎?....完全不知道原因,整個人頓時慌了!可別說自己4年的經驗了!"\155"和"m"是全等的,到現在,2011年了我才知道,深感慚愧! 對於字元轉義,常見的大概如下: "\u5230" ==> "到" "\t" ==> horizontal tab "\u0009" "\\" ==> backslash "\u005C" "\x35" ==> "5" .... 155由8進位轉為 10進位為 1*64+
Time of Update: 2017-01-19
在該書2.8.4節中講到String類中的subString()方法和slice()方法,其用法和返回結果都基本相同,如下樣本: 複製代碼 代碼如下: var strObj = new String("hello world"); alert(strObj.slice(3)); // 輸出結果:"ol world" alert(strObj.subString(3)); // 輸出結果:"ol world" alert(strObj.slice(3, 7)); // 輸出結果:"lo
Time of Update: 2017-01-19
方式1 複製代碼 代碼如下: function Person(n,a){ this.name = n; this.age = a; if(this instanceof Person){ alert('new調用'); }else{ alert('函數調用'); } } var p = new Person('jack',30); // --> new調用 Person(); // --> 函數調用 方式2 複製代碼 代碼如下: function Person(n,a){
Time of Update: 2017-01-19
在SharePoint2010裡有了很好的解決方案(詳見拙文SharePoint用戶端編程系列http://www.jb51.net/article/27198.htm),但是在SharePoint2007裡就沒那麼好用,具體問題具體分析,本文要解決的是如何在JavaScript裡通過WebService訪問SharePoint資料的問題。 首先需要從此處(http://darrenjohnstone.net/download/12)下載JavaScript
Time of Update: 2017-01-19
總得來說面試的過程還是收穫了不少,主要是認清自己的差距到底有多大,知識面到底有多窄,適當打擊一下自信心還是有必要的。在這裡做一次全面的總結,關於javascript的數組去重問題。 考慮一個問題由簡到繁相對容易接受一點,首先假設要去重的數組是比較簡單的,例如: 複製代碼 代碼如下: var arr=[1,2,2,3,'5',6,5,'',' ']
Time of Update: 2017-01-19
這次還是利用原來代碼的組織圖重新加強了功能,目前來說還有兩個小問題,第一個是ie6下自訂彈出層會出現無法遮住select的情況,目前還沒加入到組件裡,可以自己在自訂的div裡面加上ifame來遮罩,組件內建的彈出層可以遮住。第二個問題,由於是絕對位置,所以在改變瀏覽器視窗大小的時候會出現無法自動跟隨。大家試試就知道了,當然問題肯定不少,只是這兩個我認為比較重要的,暫時列出來,以後修複。 下面是代碼,裡面都有注釋,可以直接運行。 線上示範 http://demo.jb51.net/js/2011/
Time of Update: 2017-01-19
第一次翻譯技術文章,見笑了!翻譯原文:Function.apply and Function.call in JavaScript第一段略。每個JavaScript函數都會有很多附屬的(attached)方法,包括toString()、call()以及apply()。聽起來,你是否會感到奇怪,一個函數可能會有屬於它自己的方法,但是記住,JavaScript中的每個函數都是一個對象。看一下 這篇文章
Time of Update: 2017-01-19
javascript原生和jquery庫實現iframe自適應內容高度和寬度---推薦使用jQuery的代碼!<iframe src="index.php" id="mainiframe" name="mainiframe" width="100%" frameborder="0" scrolling="no" marginwidth="0" marginheight="0"></iframe>基於Jquery庫的代碼很好實現:<script