Time of Update: 2017-01-19
如何捕獲和分析 JavaScript Error 前端工程師都知道 JavaScript 有基本的異常處理能力。我們可以 throw new Error(),瀏覽器也會在我們調用 API 出錯時拋出異常。但估計絕大多數前端工程師都沒考慮過收集這些異常資訊。反正只要 JavaScript 出錯後重新整理不複現,那使用者就可以通過重新整理解決問題,瀏覽器不會崩潰,當沒有發生過好了。這種假設在 Single Page App 流行之前還是成立的。現在的 Single Page App
Time of Update: 2017-01-19
洗牌演算法是我們常見的隨機問題,在玩遊戲、隨機排序時經常會碰到。它可以抽象成這樣:得到一個M以內的所有自然數的隨機順序數組。在百度搜“洗牌演算法”,第一個結果是《百度文庫-洗牌演算法》,掃了一下裡面的內容,很多內容都容易誤導別人走上歧途,包括最後用鏈表代替數組,也只是一個有限的最佳化(鏈表也引入了讀取效率的損失)。該文裡的第一種方法,可以簡單描述成:隨機抽牌,放在另一組;再次抽取,抽到空牌則重複抽。“抽到空牌則重複抽”這會導致後面抽到空牌的機會越來越大,顯然是不合理的。可以最佳化一步成:牌抽走後
Time of Update: 2017-01-19
這裡面做了一個JavaScript的求愛小特效,效果如下: 不僅能出現下面的圖的效果,還可以讓這個圖形跟隨著滑鼠轉動哦,這裡面只是一個簡單的沒有修飾的小例子,基於這個例子可以讓求愛,更加好玩了。悶騷男們,是不是可以給你的小蘿莉發個這樣的網頁啊。給力的。 貼上code吧: 複製代碼 代碼如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title
Time of Update: 2017-01-19
大家在使用Javascript的時候經常被this這個傢伙搞得暈頭轉向的。對大多數有OOP開發經驗的開發人員來說this是當前範圍中引用普通元素的標識符,但是在Javascript中它卻顯得古靈精怪的,因為它不是固定不變的,而是隨著它的執行環境的改變而改變。在Javascript中this總是指向調用它所在方法的對象。舉一個簡單的例子:複製代碼 代碼如下:function test(){alert(this);}var obj=function(){var
Time of Update: 2017-01-19
本文執行個體匯總了常用的JavaScript快顯視窗方法,供大家對比參考,希望能對大家有所協助。詳細方法如下:1.無提示重新整理網頁:大家有沒有發現,有些網頁,重新整理的時候,會彈出一個提示視窗,點“確定”才會重新整理。而有的頁面不會提示,不彈出提示視窗,直接就重新整理了.如果頁面沒有form,則不會彈出提示視窗如果頁面有form表單,a)<form method="post" ...> 會彈出提示視窗b)<form
Time of Update: 2017-01-19
在這篇文章中,我將列出10個Javascript實用小技巧,主要面向Javascript新手和中級開發人員。希望每個讀者都能至少從中學到一個有用的技巧。1.變數轉換看起來很簡單,但據我所看到的,使用建構函式,像Array()或者Number()來進行變數轉換是常用的做法。始終使用未經處理資料類型(有時也稱為字面量)來轉換變數,這種沒有任何額外的影響的做法反而效率更高。複製代碼 代碼如下:var myVar = "3.14159",str
Time of Update: 2017-01-19
複製代碼 代碼如下:<style><!--body{padding-top:50px;padding-left:100px;padding-right:150px;} .fileDiv{float:left;width:100px;height:100px;text-align:center;line-height:100px;font-size:12px;border:1px solid
Time of Update: 2017-01-19
將javascript代碼添加到用戶端的方法是把它放置在偽協議說明符javascript:後的URL中。這個特殊的協議型別宣告了URL的主體是任意的javascript代碼,它由javascript的解譯器運行。如果javascript:URL中的javascript代碼含有多個語句,必須使用分號將這些語句分隔開。這樣的URL如下所示:javascript:var now = new Date(); "<h1>The time is:</h1>" +
Time of Update: 2017-01-19
本文執行個體講述了javascript匿名函數的用法。分享給大家供大家參考。具體分析如下:摘要:本文講解的是javascript最基礎也是最重要的東西--函數,之所以寫這篇文章,是因為面試的時候問到了,也算是溫故而知新了。先上個例子,如果你看懂了,說明你已經理解了本文要講的。複製代碼 代碼如下:var f = (function() { function f() {return 10;} return f(); &
Time of Update: 2017-01-19
javascript並沒有mouse對象,擷取滑鼠座標要靠強大的event對象。我們通過監聽document的mousemove,就可以即時獲得滑鼠位置。但是!!event中和滑鼠相關的屬性太多了,很讓人頭大!如下: event.layerX event.layerY event.clientX event.clientY event.pageX event.pageY
Time of Update: 2017-01-19
全面相容的javascript時間格式化函數,實用總結! 複製代碼 代碼如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>js日期格式化</title> <script language=
Time of Update: 2017-01-19
JavaScript如何擷取當前頁面上的指定對象. 方法如下: 複製代碼 代碼如下: document.getElementById(ID) //獲得指定ID值的對象 document.getElementsByName(Name) //獲得指定Name值的對象數組 document.all[] //很智能的東東 不過非WEB標準 document.getElementsByTagName //獲得指定標籤值的對象數組 下面給出例子,只需把注釋去掉直接運行就可看出效果. 複製代碼 代碼如下:
Time of Update: 2017-01-19
對於一些小數點後有多位的浮點數,我們可能只需要保留2位,但js沒有提供這樣直接的函數,所以我們得自己寫函數實現這個功能,代碼如下:複製代碼 代碼如下:function changeTwoDecimal(x) { var f_x = parseFloat(x); if (isNaN(f_x)) {
Time of Update: 2017-01-19
eval(String) 函數可計算某個字串,並執行其中的的 JavaScript 代碼。傳回值通過計算 string 得到的值(如果有的話)。說明該方法只接受原始字串作為參數,如果 string 參數不是原始字串,那麼該方法將不作任何改變地返回。因此請不要為 eval() 函數傳遞 String 對象來作為參數。如果試圖覆蓋 eval 屬性或把 eval() 方法賦予另一個屬性,並通過該屬性調用它,則 ECMAScript 實現允許拋出一個 EvalError
Time of Update: 2017-01-19
自己用的載入js檔案,支援多檔案,不相容ie複製代碼 代碼如下:/** * 載入js檔案 * @param {string || array} url js路徑 * @param {Function} fn 載入完成後回調 * @return
Time of Update: 2017-01-19
功能描述:開啟一個網站的網頁,過5分鐘不動作,就會鎖定頁面,隱藏內容容器,顯示一個容器用於輸入密碼,輸入正確的密碼來解鎖。鎖定後即使使用者重新整理頁面,還是保留原來的狀態。如已經鎖定的,需要繼續鎖定,否則顯示內容。 範例程式碼如下,通過document.onmouseover來實現多少分鐘沒有動作,使用計時器來實現。<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
Time of Update: 2017-01-19
Getter是一種擷取一個屬性的值的方法,Setter是一種設定一個屬性的值的方法。可以為任何預定義的核心對象或使用者自訂對象定義getter和setter方法,從而為現有的對象添加新的屬性。有兩種方法來定義Getter或Setter方法:1.在對象初始化時定義2.在對象定義後通過Object的__defineGetter__、__defineSetter__方法來追加定義在使用對象初始化過程來定義Getter和Setter方法時唯一要做的事情就是在getter方法前面加上“get”,在sett
Time of Update: 2017-01-19
昨晚德國和葡萄牙的焦點之戰你看了嗎?北京時間淩晨的比賽中,C羅領銜的葡萄牙0-4德國被完滅……他是金球獎得主、歐洲金靴、歐冠冠軍核心,在葡萄牙隊……9張圖 C羅告訴你什麼叫欲哭無淚 複製代碼 代碼如下: <span style="font-size:14px;"><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
Time of Update: 2017-01-19
本文介紹原生javascript實現元素拖動。思路:1.首先改變被拖動元素的布局屬性,關鍵是“position:absolue”;2.捕捉滑鼠事件"mousedown","mousemove","mouseup";3.當觸發"mousedown"時,記錄下當前滑鼠在元素中的相對位置,_x,_y;4.緊接著處理"mousemove"事件,通過改變元素的top和left屬性來移動元素;5.當觸發"mouseup"時間時,終止拖動。同時,應考慮代碼的封裝性和瀏覽器的相容性,代碼如下:<!DOCT
Time of Update: 2017-01-19
在JavaScript中,var用來聲明變數,但是這個文法並不嚴格要求,很多時修改,我們可以直接使用一個變數而不用var聲明它。複製代碼 代碼如下:var x = "XX"; y ="xxx"; 諸如此類。這有一個問題,比如說在代碼中的某一行,我想使用的一個已聲明的變數x,結果由於打字或者拼字錯誤,這個變數被寫成y了,結果相當於“隱式”聲明了一個變數y,在實際編程過程中,這種錯誤有時比較難以發現。