javascript 中的this 與事件註冊 及event

本文不討論 文法解釋期和執行期的區別 以及上下文環境和閉包的概念 我們只從另一個角度來看問題.js 中的this 是一個指標 他指象某個對象.  那麼 一般來說 記住一條原則 即可.如果一個函數不是作為類 來執行個體化某個對象 如 new func();而是當 函數 做為某個對象的 方法被調用時 則this就指向該對象. 如果該函數是直接被調用 則this指向全域變數...這句話似乎不好理解. 我們看下例子function test(){this.name='franky';}var o={};

[譯]Javascript quiz

原文:http://asenbozhilov.com/articles/quiz.html這些題目都源自ECMA-262-3規範.Good luck!譯者注:作者是根據ES3出的題,但我沒發現和ES5有不同表現的地方.暫時不給出答案解釋.請到http://ecma-international.org/ecma-262/5.1/找答案 Function.prototype.toString.call({ name: 'F', body: 'print("Javascript is

一套有趣的 javascript題.

原題地址: http://www.cnblogs.com/ziyunfei/archive/2012/10/04/2711370.html有興趣的同學可以去做一做. 本帖為,本人給出的答案貼.並非原作者給出答案. 僅供參考. 歡迎討論. 1. TypeError原因: Function.prototype.toString不是一個通用方法,這意味著,該方法被調用時,其this,如果不是一個函數對象,則要拋出TypeError異常.2. TypeError.原因: new

JavaScript自動化佈建IFrame高度(相容各主流瀏覽器)

function SetIFrameHeight(down) { var Sys = {}; var ua = navigator.userAgent.toLowerCase(); var s; (s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] : (s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s[1] : (

JavaScript對象——Global

全域屬性和函數可用於所有內建的 JavaScript 對象。頂層函數(全域函數)FF: Firefox, IE: Internet Explorer函數描述FFIEdecodeURI()解碼某個編碼的 URI。15.5decodeURIComponent()解碼一個編碼的 URI 組件。15.5encodeURI()把字串編碼為 URI。15.5encodeURIComponent()把字串編碼為 URI 組件。15.5escape()對字串進行編碼。13eval()計算 JavaScript

javascript 關於類型判斷的不同方法 和效能的 思考.

.目前 主流的判斷方式 是var obj='franky';return Object.prototype.toString.call(obj)=='object String'; 這種方式..不得不說 這種方式很優秀 除了代碼量比較多一些... 但是它在 非ie瀏覽器中的效能表現十分優秀...有些朋友可能會奇怪 這個不是專門判斷是不是 Array的麼. 考慮到typeof 返回 object  以及 iframe new Window()  等其他window.Array!=

javascript 函數參數限制.

javascript 函數實參數限制.我依稀記得哪本書上有說過,實參數限制是32個? 現在想想估計是我記錯了..他也許說的是32位.測試結果:safari 下是65535個.即 ushort 來儲存(2位元組 16個1).更多的則忽略.其他瀏覽器 至少是int.MaxValue .據說FireFox 甚至是用long 來維護 實參數.其他瀏覽器 也許是int 或者可能是uint .這個就不管了. 畢竟我們知道了瓶頸 在 65535.基於 以上基礎.可以在 串連數組時 考慮優先採用

javascript繼承的原理

通過對javascript的幾種函數的運行分析,得出結論:javascript 的繼承實際上是通過對對象進行初始化來類比的。代碼一:實現繼承的一種方法<script language="javascript" type="text/livescript">function Person(){    this.say=function(){alert("Name")};}function PersonA(){    this.say=function(){alert("windowSa

JavaScript物件導向——繼承

javascript物件導向繼承的三種方法:<html xmlns="http://www.w3.org/1999/xhtml" ><head runat="server">    <title>Untitled Page</title>    <script language="javascript" type="text/javascript">    //基類    function Person()    {        th

JavaScript控制改變滑鼠的形狀

 第一方法就是在CSS裡面定義#xxx { cursor: default; } 第二方法就是在style中定義 列舉比較常用的cursor: hand;手型cursor: default;最常用的箭頭狀 cursor: text;文本 crosshair: 十字 cursor: wait;漏鬥 cursor: help;問號 cursor: e-resize;左右箭頭 多用於拖拉層效果 cursor: ne-resize; 拉視窗的樣式 cursor: n-resize;上下箭頭

javascript 編碼 當頁面傳值出現亂碼 試試這個encodeURIComponen

1、escape對ansi碼0-255以外的字元進行編碼輸出%u****格式即unicode值,escape 方法返回一個包含了 charstring 內容的字串值( Unicode 格式)。所有空格、標點、重音符號以及其他非 ASCII 字元都用 %xx 編碼代替,其中 xx 等於表示該字元的十六進位數。例如,空格返回的是 "%20" escape不編碼字元有69個:*,+,-,.,/,@,_,0-9,a-z,A-Z 2、encodeURI類似escape,用於地址欄編碼

10個令人驚奇的HTML5和JavaScript效果載自51CTO)

10款令人驚奇的HTML5和javascript效果。回到幾年前,這些效果是根本不可能實現,只能用flash做,但是現在,已經很輕鬆的就可以實現了。1. Breathing Galaxies使用鍵盤來改變形狀中的線條樣式,或移動滑鼠來建立一個新的形狀。查看:http://mudcu.be/labs/JS1k/BreathingGalaxies.html2. Noise

javascript判斷瀏覽器 和 完美相容IE和chrome的對聯廣告。

//判斷瀏覽器 //----------------------------- 判斷瀏覽器 -------------------------var userAgent = navigator.userAgent; //取得瀏覽器的userAgent字串var isOpera = userAgent.indexOf("Opera") > -1; //判斷是否Operavar isMaxthon = userAgent.indexOf("Maxthon") > -1 ;

JavaScript設定IFrame高度自適應(相容多瀏覽器)

 IFrame高度自適應的設定代碼。function SetIFrameHeight(down) {var Sys = {};var ua = navigator.userAgent.toLowerCase();var s;(s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] :(s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s[1] :(s = ua.match(/chrome\/([\d.]+)

原生JavaScript—字串[3]

首先,給大家道個歉,專欄更新的晚了。理由借口神馬的就不多說了......字串的比較 ==相等!=不相等===絕對相等!==不絕對相等>大於>=大於等於<小於<=小於等於  是否相等 var str1="JavaScript";var str2="JAVASCRIPT";document.write("str1="+str1);document.write("<br/>");document.write("str2="+str2);document.write(

JavaScript對象——RegExp

RegExp 對象RegExp 對象表示Regex,它是對字串執行模式比對的強大工具。直接量文法/pattern/attributes建立 RegExp 對象的文法:new RegExp(pattern, attributes);參數參數 pattern 是一個字串,指定了Regex的模式或其他Regex。參數 attributes 是一個可選的字串,包含屬性 "g"、"i" 和 "m",分別用於指定全域匹配、區分大小寫匹配和多行匹配。ECMAScript 標準化之前,不支援 m

JavaScript對象——Math

Math 對象Math 對象用於執行數學任務。使用 Math 的屬性和方法的文法:var pi_value=Math.PI;var sqrt_value=Math.sqrt(15);注釋:Math 對象並不像 Date 和 String 那樣是對象的類,因此沒有建構函式 Math(),像 Math.sin() 這樣的函數只是函數,不是某個對象的方法。您無需建立它,通過把 Math 作為對象使用就可以調用其所有屬性和方法。Math 對象屬性FF: Firefox, IE: Internet

JavaScript對象——Number

Number 對象Number 對象是原始數值的封裝對象。建立 Number 對象的文法:var myNum=new Number(value);var myNum=Number(value);參數參數 value 是要建立的 Number 對象的數值,或是要轉換成數位值。傳回值當 Number() 和運算子 new 一起作為建構函式使用時,它返回一個新建立的 Number 對象。如果不用 new 運算子,把 Number()

JavaScript對象——String

String 對象String 對象用於處理文本(字串)。建立 String 對象的文法:new String(s);String(s);參數參數 s 是要儲存在 String 對象中或轉換成原始字串的值。傳回值當 String() 和運算子 new 一起作為建構函式使用時,它返回一個新建立的 String 對象,存放的是字串 s 或 s的字串表示。當不用 new 運算子調用 String() 時,它只把 s 轉換成原始的字串,並返迴轉換後的值。String 對象屬性FF: Firefox,

《JavaScript DOM 編程藝術》小結

第三章

總頁數: 3271 1 .... 361 362 363 364 365 .... 3271 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.