Time of Update: 2017-01-13
代碼如下複製代碼 function charCount(str) { // 用正則匹配將各個字元從字串中替換掉,直接用正則匹配的match().length擷取每個字元出現的次數 str = str.replace(/s/ig, "");//去除空格 var strArr = str.split(""); var result =
Time of Update: 2017-01-13
代碼如下複製代碼 <script>var str = "0.1256789";//原數值// obj:操作的字串,num:指定要取小數點到第幾位// 方法1:巧移小數點,可取四捨五入function roundPlaces (obj,num) { var
Time of Update: 2017-01-13
我們在寫js代碼的時候,一般都會添加window.onload事件,主要是為了在DOM載入完後可以使用getElementById,getElementsByTagName等方法選取DOM元素進行操作,但是window.load會等到載入完DOM、指令碼、CSS,最後載入完圖片甚至是iframe中的所有資源才會觸發,很多時候網頁的圖片較多較大,要等最後圖片這個耗時大戶載入完才執行js明顯有些太遲了,很多時候都會影響使用者體驗。很多js架構都有個document.ready的功能,像JQuery的
Time of Update: 2017-01-13
後來發現這樣的文檔很不方便查看, 且又聽我們BOSS說phper能產生他們的文檔, 我在想js會不會也有一個呢, 於是...你懂的... 通過@廣州♂lxrmido 知道了 jsdoc, 於是 github上down下來; 附地址: https://github.com/jsdoc3/jsdoc他可以讓你的js產生HTML文檔,如: 代碼如下複製代碼 /** * 開啟新視窗 * @param {string} [url] 串連 * @param
Time of Update: 2017-01-13
例子 代碼如下複製代碼 msie = int((/msie (d+)/.exec((navigator.userAgent).toLowerCase()) || [])[1]);/* IE 11改變了它的userAgent格式,所以要進一步判斷 */if (isNaN(msie)) { msie = int((/trident/.*; rv:(d+)/.exec((navigator.userAgent).toUpperCase()) ||
Time of Update: 2017-01-13
將XML字串解析成XML DOM對象的方法。 代碼如下複製代碼 function parseXml(xml) { var xmldom = null; if (typeof DOMParser != "undefined") { &
Time of Update: 2017-01-13
複習物件導向知識:什麼是封裝對象?基本類型都有自己對應的封裝對象 String Number Boolean Array Data字串不是對象為什麼會有方法呢?解:方法都掛在封裝對象的原型下面 var str=new String();原型鏈//原型鏈的最外層:Object.prototype執行個體對象與原型之間的串連,叫做原型鏈 _proto_function Aaa(){this.num=20;
Time of Update: 2017-01-13
代碼如下複製代碼 0: CSSStyleSheetcssRules: CSSRuleList0: CSSStyleRulelength: 1__proto__: CSSRuleListdisabled: falsehref: nullmedia: MediaListownerNode: styleownerRule: nullparentStyleSheet: nullrules: CSSRuleListtitle: nulltype: "text/css"
Time of Update: 2017-01-13
newvar re = new RegExp(‘test’,'gi’);var re = /test/gi;functiontest();//boolexec();//string 一次匹配並返回match();//array 多次匹配並返回search();//類似indexOf()replace();//替換split();//分割有用的預定義類.[^nr]//不包含換行的任何字元d [0-9]D [^0-9]s [tnx0Bfr]//Null
Time of Update: 2017-01-13
一:能力檢測(特性檢測)能力檢測不是識別特定的瀏覽器,而是識別瀏覽器的能力。二:怪癖檢測和能力檢測不同,它主要是識別瀏覽器的bug,而且各個瀏覽氣的bug應該都是專屬的。三:使用者代理程式檢測使用者代理程式檢測通過檢測使用者代理程式字串來確定實際使用的瀏覽器。這裡我們可以先瞭解下使用者代理程式字串的曆史使用者代理程式字串檢測技術主要檢測以下幾個資訊:•識別呈現引擎•識別瀏覽器•識別平台•識別windows作業系統•識別行動裝置•識別遊戲
Time of Update: 2017-01-13
情境:js中判斷一個string是否在一個js的數組中。方法: 代碼如下複製代碼 if (['a', 'b', 'c'].indexOf(str) >= 0) { //do something} 判斷選擇的檔案的副檔名是否在指定的數組中: 代碼如下複製代碼 var position =
Time of Update: 2017-01-13
情境:服務端輸出json:{"msgList":[{"msgID":1066,"senderType":"S","senderID":"43","sender":"43","receiveNum":4,"sendTime":1394422138000,"msgFlag":1,&q
Time of Update: 2017-01-13
如果有,我向你推薦html5神器web workers(IE10+)!不卡不頓不假死,充分發揮多核多線程cpu效能!假設有個變態需求:建立10000000個0-100的隨機數,並且從中篩選出5的倍數。常規我們一般這麼處理: 代碼如下複製代碼 var arr = [];for(var i=0; i<10000000; i++){ arr[i] = Math.round(Math.random()*100);}var newArr = [
Time of Update: 2017-01-13
代碼 代碼如下複製代碼 //class選取器function getClassName(ParentId,NewClassName){ var AllClassElem = ParentId.getElementsByTagName('*'); var AllClass = []; var i=0; for(var i=0;
Time of Update: 2017-01-13
是的我們要理解繼承模式首先
Time of Update: 2017-01-13
javascript是弱類型的語言,系統在遍曆json資料是會自行判斷資料類型進行排序,如下: 代碼如下複製代碼 <script src="jquery.js"></script><script>var json1 = {
Time of Update: 2017-01-13
0×00背景我們知道物件導向的語言有一個標誌就是有類的概念,通過類可以建立多個具有相同屬性和方法的對象。但是ECMAScript中沒有類的概念,所以它的對象和其他基於類的語言中的對象有點不同,它是基於原型的物件導向。ECMA-262把對象定義為“無序屬性的集合,其屬性可以包含基本值,對象或者函數”。每個對象都是基於一個參考型別建立的,這個參考型別可以是原生的參考型別,也可以是自訂的類型。我們先用最簡單的方式建立一個對象 代碼如下複製代碼
Time of Update: 2017-01-13
以下變數具有全域範圍: 1.所有定義在最外層的變數(非函數體內部)具有全域範圍。 2.未定義直接賦值的變數,系統會把它聲明為全域範圍。 3.所有window對象的屬性具有全域範圍。以下變數具有函數範圍 1. 在函數體內部用var定義的變數,這裡要注意一點,只要是在函數裡定義的變數,就算是在最
Time of Update: 2017-01-13
請記住,cookie就是文檔的一個字串屬性。要儲存cookie,只要建立一個字串,格式是name=<value>(名稱=值),然後把文檔的 document.cookie 設定成與它相等即可。比如,假設想儲存表單接收到的使用者名稱,那麼代碼看起來就象這樣: 代碼如下複製代碼 document.cookie = “username” + escape(form.username.value); 在這裡,使用 escape() 函數非常重要,
Time of Update: 2017-01-13
類似地,我們可以想像,1/3的結果應該是0.3333333333333333。為了得到我們想要的結果,我們需要校正這個值。js中通過parseFloat函數可以把字串轉換成浮點數. 如果要把字串轉換成整數我們可以使用parseInt 函數. 通過parseFloat只能把數字字元轉換成浮點數,不能把字母字元轉換成浮點數。 parseFloat