Time of Update: 2017-01-19
在Javascript中可以使用OuterWidth,OuterHeight 擷取瀏覽器的大小.用 innerWidth,innerHeight 來擷取視窗的大小(除去瀏覽器邊框部分)。對於IE6 及之前版本,要區分是標準模式,還是混雜模式。標準模式使用document.documentElement.clientWidth,document.documentElement.clientHeight;混雜模式使用document.body
Time of Update: 2017-01-19
Javascript 中建立對象,可以有很多種方法。Object建構函式/對象字面量:拋開設計模式不談,使用最基本的方法,就是先調用Object建構函式建立一個對象,然後給對象添加屬性.複製代碼 代碼如下: var student = new Object(); student.name = "xiao ming"; student.age = 20;&
Time of Update: 2017-01-19
js中遍曆數組的有兩種方式複製代碼 代碼如下:var array=['a']//標準的for迴圈for(var i=1;i<array.length;i++){ alert(array[i])}//foreach迴圈for(var i in array){
Time of Update: 2017-01-19
1.json轉字串複製代碼 代碼如下:function json2str(o) { var arr = []; var fmt = function (s) { if (typeof s == 'object' && s != null) return
Time of Update: 2017-01-19
Javascript 引擎的單線程特性使得在處理一個較大的迴圈遍曆時會長時間獨佔線程,導致其它事件(例如使用者操作)無法及時響應,嚴重時造成卡頓甚至是假死現象。為解決上述問題,一種可行機制是將大的迴圈拆分成若干小的迴圈片段分區執行,使得Javascript 引擎有時機在各段之間插入執行其它事情,從而有效改善效能體驗Ansync.js複製代碼 代碼如下:function Ansync (totalCount, segmentCount, workCallback, returnCallback){
Time of Update: 2017-01-19
Regex:((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)紅色塊代表:第一個字元是2,第二個字元是0到4,第三個字元是任意一位元字。表示200~249。綠色塊代表:第一個字元是2,第二個字元是5,第三個字元是0到5。表示2
Time of Update: 2017-01-19
1.indexOf和lastIndexOf方法:因為IE7在數組對象上使用indexOf會報錯,所以需要重寫一個相容性的。複製代碼 代碼如下:Array.prototype.lastIndexOf(item,index){ var n = this.length,i = (index==null||index>n-1)?n-1:index; if(i < 0) i = n+i; for(;i>=0;i--) if(this[i] ===
Time of Update: 2017-01-19
1.repeat方法:將一個字串重複自身n次。比如:repeat("chaojidan",2) -> chaojidanchaojidan方法1:複製代碼 代碼如下:function repeat(str,n){ return Array.prototype.join.call({length:n+1},str);
Time of Update: 2017-01-19
1.命名空間: js裡面的命名空間就是使用對象的屬性來擴充的。比如,使用者定義一個A對象,A對象下面有B屬性和C屬性,同時B屬性和C屬性又是對象。因此A={B:{},C:{}},這時使用者就可以在B對象和C對象中定義一樣的方法,屬性了。因此B和C就屬於不同的命名空間。我們調用B,C對象裡面的方法,就可以通過A.B.like(),A.C.like()調用了。當然A屬於window對象中的屬性。 但是有一種情況,比如:boke.jsp頁面引入了jquery.js以及prototype.js(他們
Time of Update: 2017-01-19
本文執行個體分析了Javascript字串瀏覽器安全色問題。分享給大家供大家參考。具體分析如下:先看下不相容的寫法,若我想擷取某個字串的第幾位複製代碼 代碼如下:var str='aavvvcc';console.info(str[0]);這種寫法 在IE 7以下的瀏覽器都不相容,以下提供瀏覽器全相容的方式複製代碼 代碼如下:var str='aavvvcc';console.info(str.charAt(1));使用charAt()
Time of Update: 2017-01-19
原生 javascript 中四捨五入的函數 toFixed(n) , n為要保留的小數位元。 (0<= n <=20)複製代碼 代碼如下:var num=1.0999;console.log(num.toFixed(20));http://jsfiddle.net/14x0vhu6/輸出值不是預想的1.0999,而是
Time of Update: 2017-01-19
判斷整數的方法有兩種:正則判斷和逐字判斷。由於逐字判斷效率過於低下,這裡就不予描述了,有興趣的看客可以自己Google。1.正則判斷複製代碼 代碼如下:var r = /^\+?[1-9][0-9]*$/; //正整數 console.log(r.test(1.23));效果測試:http://jsfiddle.net/wzsdp9Lc/擴充功能列表複製代碼 代碼如下:"^\\d+$" //非負整數(正整數 + 0)"^[0-9]*[1-9][0-9]*$" //正整數"^((-\
Time of Update: 2017-01-19
代碼很簡單,我這裡就不多廢話了,小夥伴們直接看源碼吧。複製代碼 代碼如下:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html;
Time of Update: 2017-01-19
Js中的變數範圍問題:1、沒有塊級範圍。Js中的變數範圍不是以{}為界的,不像C/C++/Java。如:複製代碼 代碼如下: if(true){ var name = "qqyumidi"; } alert(name); //
Time of Update: 2017-01-19
昨天在使用Jquery Ui Datapicker做顯示簽到日曆功能的時候,出現了Js問題,在IE8/IE9以及FF、Chrome下都顯示正常,但是在IE6/IE7以及IE8相容視圖下顯示有問題,提示“頁面上有錯誤”,進一步查看顯示錯誤資訊“缺少標識符、字串或數字”,一開始以為是Jquery 和Jquery
Time of Update: 2017-01-19
複製代碼 代碼如下:<script Language="JavaScript">//第一個參數值. function test(a,b,c,d){ alert(arguments[0]); } //arguments[0]實際上就是a,同理,arguments[1]就是b,依次c,d</script> 複製代碼 代碼如下: <script Language="JavaScript">{
Time of Update: 2017-01-19
複製代碼 代碼如下:<!doctype html><html><head><meta charset="utf-8"><title>日期輸入</title><script>window.onload = function(){ var aLaydate = document.getElementsByClassName("date");
Time of Update: 2017-01-19
做個筆記複製代碼 代碼如下:// 禁用右鍵菜單、複製、選擇$(document).bind("contextmenu copy selectstart", function() { return false;});// 禁用Ctrl+C和Ctrl+V(所有瀏覽器均支援)$(document).keydown(function(e) { if(e.ctrlKey && (e.keyCode == 65 ||
Time of Update: 2017-01-19
你是怎麼調試 JavaScript 程式的?最原始的方法是用 alert() 在頁面上列印內容,稍微改進一點的方法是用 console.log() 在 JavaScript 控制台上輸出內容。嗯~,用這兩種土辦法確實解決了很多小型 JavaScript 指令碼的調試問題。不過放著 Chrome 中功能越發強大的開發人員工具不用實在太可惜了。本文主要介紹其中的 JavaScript斷點設定和調試功能,也就是其中的 Sources Panel(以前叫 Scripts)。如果你精通 Eclipse
Time of Update: 2017-01-19
抽象原廠模式說明1. Factory 方法模式的問題: 在Factory 方法模式裡,建立類都需要通過 工廠類,如果要擴充程式,就必須修改工廠類,這違背了閉包原則,對擴充開放,對修改關閉;對於設計有一定的問題。 2. 如何解決:就要用到抽象原廠模式,就是對功能類單獨建立工廠類,這樣就不必修改之前的代碼,又擴充了功能。 3. 原廠模式其實就是對 實現同一介面的 實作類別 的 統一 工廠方式建立調用,但 javascript 沒有介面這號東西,所以就去掉這一層