Time of Update: 2018-12-08
文章目錄 例子-拷貝例子-指向結合 下面先講如何在event handling(事件處理)中用它,再接著是講 this 的其他用法。自己本身先來看看函數 doSomething() 裡的 this 到底是指向(refer to)了什嗎?function doSomething() { this.style.color = '#cc0000';}JavaScript的 this
Time of Update: 2018-12-08
split定義和用法 split() 方法用於把一個字串分割成字串數組。 文法 stringObject.split(separator, howmany)參數 描述 separator 必需。字串或Regex,從該參數指定的地方分割 stringObject。 howmany 可選。該參數可指定返回的數組的最大長度。如果設定了該參數,返回的子串不會多於這個參數指定的數組。如果沒有設定該參數,整個字串都會被分割,不考慮它的長度。 傳回值 一個字串數組。該數組是通過在 separator
Time of Update: 2018-12-08
Function instanceof Object 和 Object instanceof Function 都是 true 1。我們可以認為 Object 是一個特殊的“類”,而這裡的“類”即:Function 於是便可以理解為: Object = Function () {} 或 Object = new Function(); 即:Object 是 Function 的一個執行個體,所以,Object 原型鏈中便包含 Function.prototype,得出:
Time of Update: 2018-12-08
如我們建立表單FatherPage.htm: XML-Code: 複製代碼 代碼如下:<script type="text/javascript"> function OpenChildWindow() { window.open('ChildPage.htm'); } </script> <input type="text" id="txtInput" /> <input type="button" value="OpenChild" onclick=
Time of Update: 2018-12-08
JScript 是一種區分大小寫語言。 第一個字元必須是一個 ASCII 字母(大小寫均可),或一個底線(_)。注意第一個字元不能是數字。 後續的字元必須是字母、數字或底線。 變數名稱一定不能是 保留字。 下面給出合法變數名稱的一些樣本: _pagecount Part9 Number_Items 下面給出無效變數名稱的一些樣本: 99Balloons // 不能以數字開頭。Smith&Wesson // “與”符號(&)字元用於變數名稱是無效的。
Time of Update: 2018-12-08
幾個例子: 複製代碼 代碼如下:function case1(num){ switch(num){ case 1: document.writeln("show 1!!"); break; case 2: document.writeln("show 2!!"); break; case 3: document.writeln("show 3!!"); break; default: document.writeln("show others!!"); break; } } function
Time of Update: 2018-12-08
但javascript中並沒有類概念,所謂的類也是類比而來,通過函數加閉包類比出類成員及私人成員(關於閉包可以參見跨越邊界: 閉包)。這裡我們將用比較平實的方式來瞭解一下javascript中的”類”,避開一些生硬的原理。 既然是用function來類比類,所以編寫代碼建立類的關鍵字還是function。我們建立一個座標點類。 function Point() { this.X = 0; this.Y = 0; }; var
Time of Update: 2018-12-08
var x = "XX"; y ="xxx"; 諸如此類。這有一個問題,比如說在代碼中的某一行,我想使用的一個已聲明的變數x,結果由於打字或者拼字錯誤,這個變數被寫成y了,結果相當於“隱式”聲明了一個變數y,在實際編程過程中,這種錯誤有時比較難以發現。 除此之外,今天通過同事介紹,瞭解到這種“隱式聲明”中的別外一個問題。
Time of Update: 2018-12-08
好程式不是寫給computer的,而是寫給human的。遇到複雜功能,應該想著把它簡化、組件化,把小功能封裝成小工具,小功能塊可以任意的組合得到千變萬化的複雜功能。function就可以協助我們把功能進行封裝。那什麼是封裝呢。要我說,只要把具體實現給打包,對外提供調用介面那就是封裝,方法也好、類也好就做了這些事。
Time of Update: 2018-12-08
javascript和java、C#等語言一樣也具有物件導向的一些特徵,但細比較的時候,會發現這些特徵並不是真正的物件導向,很多地方都是利用對象本身來類比物件導向,所以認為javascript不能算是物件導向程式設計語言,而是基於對象的語言。 在javascript中真的是萬物皆對象,new出來的東西是對象,方法是對象,連類也都是對象。下面分別來看一下對象、方法和類的對象特徵。 1.拿內建的Date來看一下吧 複製代碼 代碼如下:var time = new Date(); var
Time of Update: 2018-12-08
菜鳥版代碼如下: 理解這段代碼就基本上掌握了 複製代碼 代碼如下:function f_s() { var obj = document.getElementById("top"); obj.style.display = "block"; obj.style.height = "1px"; var sw = function () { var s_width = parseInt(obj.style.height); if (s_width < 350) {
Time of Update: 2018-12-08
最近遇到js的效率問題,是關於在頁面中新增元素的問題。 假設我們有頁面如下: 複製代碼 代碼如下:<HTML> <HEAD> </HEAD> <BODY> <div id="div1"></div> </BODY> <script> // 指令碼位置 </script> </HTML> 現在,我們要往div1中添加對象,大家都知道在為web頁面增加一個元素時可以使用如下代碼:
Time of Update: 2018-12-08
問題:做一個帶拖動的彈出層效果(像提示框那種) 先寫了一半,明天繼續奮鬥: xmlns="http://www.w3.org/1999/xhtml">
Time of Update: 2018-12-08
5,閉包 閉包意味著內層的函數可以引用存在於包圍它的函數內的變數,即使外層函數的執行已經終止。 讓我們先來看一個閉包的例子。 [Ctrl+A 全選 注:如需引入外部Js需重新整理才能執行]代碼①是處於函數內層,不過它可以使用外層的變數num。 閉合還能解決另一個常見的Js問題,全域變數的影響。 通過自動執行匿名函數組合閉包,便可把原本屬於全域的變數隱藏起來。看下面的例子: [Ctrl+A 全選 注:如需引入外部Js需重新整理才能執行]在使用setTimeout時,我們經常也用上了閉包。
Time of Update: 2018-12-08
複製代碼 代碼如下:<script> //定義一個javascript類 function JsClass(privateParam/* */,publicParam){//建構函式 var priMember = privateParam; //私人變數 this.pubMember = publicParam; //公開變數 //定義私人方法 function priMethod(){ return "priMethod()"; } //定義特權方法
Time of Update: 2018-12-08
一,物件導向的基礎 對象是JavaScript的基礎。從最基本的層次上說,對象是一系列屬性的集合。 1,對象的建立 [Ctrl+A 全選 注:如需引入外部Js需重新整理才能執行]相信很多朋友對這些建立對象的方式接觸過很多次了,都很熟悉了。 2,對象的使用 和其他物件導向語言不同的是,JavaScript沒有類的概念。在JavaScript裡,任何函數都可以被執行個體化為一個對象。 [Ctrl+A 全選 注:如需引入外部Js需重新整理才能執行]本段代碼通過new
Time of Update: 2018-12-08
複製代碼 代碼如下:function jb51tuitan(){ if (getCookie('jb51popped')==''){ //要執行的代碼或一些操作setCookie("jb51popped","ok"); //寫入cookies表示已經執行過了。 alert("ok"); } } jb51tuitan() function setCookie(name, value) { var argv = setCookie.arguments; var argc =
Time of Update: 2018-12-08
但是,有一些細節並不為我們所熟知。John Resig 在分析了這些細節之後,為我們提供了一個完美的解決方案,本文將作詳細介紹: 一、傳統方法不為人所知的細節 毫無疑問,在判斷函數類型時,我們使用的是typeof方法,比如: 複製代碼 代碼如下:function fn(){ //content } alert(typeof fn)//結果是"function"。 但是,該方法在一些瀏覽器中並不是像我們想像的那樣工作。 1、Firefox2和Firefox3
Time of Update: 2018-12-08
1。編寫js函數 <script type="text/javascript"> function display(y){$(y).style.display=($(y).style.display=="none")?"":"none";} function $(s){return document.getElementById(s);} </script> 2. 要顯示/隱藏的html元素加上 id 屬性 <table> <tr id="menu" &
Time of Update: 2018-12-08
轉化為Boolean類型所有JavaScript中的值都能隱式的轉化為Boolean類型,比如:複製代碼 代碼如下: 0 == false; // true 1 == true; // true '' == false // true null == false // true 但是這些值都不是Boolean類型。因此當我們使用三個等號進行比較時:複製代碼 代碼如下: 0 === false; // false 1 === true; // false '' === false //