JavaScript中常用的運(yùn)算符及其使用方法
JavaScript中常用的運(yùn)算符及其使用方法如下:
類型
-(負(fù)值),例如:-5。
*(乘法),例如:2*4,得8。
/(除法),例如:10/2,得5。
%(取余),例如:9%2,余數(shù)為1。
+(加法),例如:1+2,得3。
-(減法),例如:9-8,得1。
算術(shù)運(yùn)算符
|(按位或運(yùn)算),例如:5|3,得7。
<<;(左移),例如:5<<3,得40。
>>;(右移),例如:5>>1,得2。
~(取補(bǔ)),例如:~5 ,得6。
++(遞加),例如: a=5,a++,得a=6。
--(遞減),例如: a=5,a--,得a=4。
字符運(yùn)算符
+(字符串連接),例如:“a”+“b”,得ab。
==(等于),例如:1==2,為Flase。
!=(不等于),例如:3!=4,為True。
比較運(yùn)算符
<;(小于),例如:7<6,為Flase。
>;(大于),例如:10>9,為True。
<;=(小于等于),例如:6<=9,為True。
>;=(大于等于),例如:3>=6,為Flase。
邏輯算符
?。ㄟ壿嫹牵?,例如:!Flase,為True。
&(邏輯與),例如:Flase&True,為Flase。
||(邏輯或),例如:Flase||True,為True。
^(邏輯異或),例如:Flase^True,為True。
document的方法如下:(摘自javascript寶典-16章document對象和body元素對象)
attachEvent();
captureEvent();
clear();
clearAttributes();
close();
createAttribute();
createComment();
();
createElement();
createEvent();
createEventObject();
createRange();
createStyleSheet();
createTextNode();
createTreeWalker();
detachEvent();
elementFrommPoint();
execCommand();
focus();
getElementById();
getElementsByName();
getElementsByTagName();
getSelection();
handleEvent();
hasFocus();
mergeAttributes();
open();
queryCommandEnabled();
queryCommandIndterm();
queryCommandState();
queryCommandSupported();
queryCommandText();
queryCommandValue();
recalc();
releaseCapture();
releaseEvents();
routeEvent();
setActive();
write();
writeln();
1.indexOf //返回某個(gè)指定的字符串值在字符串中首次出現(xiàn)的位置。
example:var str = 'abcdef'; alert(str.indexOf('b')) //輸出為12.lastIndexOf //返回一個(gè)指定的字符串值最后出現(xiàn)的位置,在一個(gè)字符串中的指定位置從后向前搜索。example:var str="aaabbbcccaaaddd"; alert(str.lastIndexOf('aaa')); //輸出為93.every //沒用過,知道的請告訴我一下4.filter //JQuery的方法 將匹配元素集合縮減為匹配指定選擇器的元素。
example:$('li').filter(':even').css('background-color', 'red'); //給偶數(shù)Li加背景色5.foreach //php等后臺語言常用foreach, js常用for循環(huán),JQuery常用each6.map //jquery方法 將一組元素轉(zhuǎn)換成其他數(shù)組(不論是否是元素?cái)?shù)組)example://把form中的每個(gè)input元素的值建立一個(gè)列表。$("p").append( $("input").map(function(){ return $(this).val();}).get().join(", ") );//得到:[ John, password, pilenbsp;把正則表達(dá)式編譯為內(nèi)部格式,從而執(zhí)行得更快nbsp;concatnbsp;返回一個(gè)新數(shù)組,這個(gè)新數(shù)組是由兩個(gè)或更多數(shù)組組合而成的nbsp;concat(String)nbsp;返回字符串值,該值包含了兩個(gè)或更多個(gè)提供的字符串的連接nbsp;cosnbsp;返回?cái)?shù)的余弦值nbsp;dnbsp;nbsp;nbsp;decodeURInbsp;返回一個(gè)已編碼的統(tǒng)一資源標(biāo)識符nbsp;(URI)nbsp;的非編碼形式nbsp;;返回統(tǒng)一資源標(biāo)識符nbsp;(URI)nbsp;的一個(gè)已編碼組件的非編碼形式nbsp;dimensionsnbsp;返回nbsp;VBArraynbsp;的維數(shù)nbsp;enbsp;nbsp;nbsp;encodeURInbsp;將文本字符串編碼為一個(gè)有效的統(tǒng)一資源標(biāo)識符nbsp;(URI)nbsp;;將文本字符串編碼為一個(gè)統(tǒng)一資源標(biāo)識符nbsp;(URI)nbsp;的一個(gè)有效組件nbsp;escapenbsp;對nbsp;Stringnbsp;對象編碼以便它們能在所有計(jì)算機(jī)上可讀nbsp;evalnbsp;檢查nbsp;JScriptnbsp;代碼并執(zhí)行nbsp;execnbsp;用正則表達(dá)式模式在字符串中運(yùn)行查找,并返回包含該查找結(jié)果的一個(gè)數(shù)組nbsp;expnbsp;返回nbsp;e(自然對數(shù)的底)的冪nbsp;fnbsp;nbsp;nbsp;fixednbsp;把HTMLamp;lt;TTamp;gt;標(biāo)記放置在nbsp;Stringnbsp;對象中的文本兩端nbsp;nbsp;floornbsp;返回小于等于其數(shù)值參數(shù)的最大整數(shù)nbsp;fontcolornbsp;把帶有nbsp;COLORnbsp;屬性的一個(gè)nbsp;HTMLnbsp;amp;lt;FONTamp;gt;nbsp;標(biāo)記放置在nbsp;Stringnbsp;對象中的文本兩端nbsp;fontsizenbsp;把一個(gè)帶有nbsp;SIZEnbsp;屬性的nbsp;HTMLnbsp;amp;lt;FONTamp;gt;nbsp;標(biāo)記放置在nbsp;Stringnbsp;對象中的文本的兩端nbsp;fromCharCodenbsp;從一些nbsp;Unicodenbsp;字符值中返回一個(gè)字符串nbsp;gnbsp;nbsp;nbsp;getDatenbsp;返回nbsp;Datenbsp;對象中用本地時(shí)間表示的一個(gè)月中的日期值nbsp;getDaynbsp;返回nbsp;Datenbsp;對象中用本地時(shí)間表示的一周中的日期值nbsp;getFullYearnbsp;返回nbsp;Datenbsp;對象中用本地時(shí)間表示的年份值nbsp;getHoursnbsp;返回nbsp;Datenbsp;對象中用本地時(shí)間表示的小時(shí)值nbsp;getItemnbsp;返回指定位置的項(xiàng)nbsp;getMillisecondsnbsp;返回nbsp;Datenbsp;對象中用本地時(shí)間表示的毫秒值nbsp;getMinutesnbsp;返回nbsp;Datenbsp;對象中用本地時(shí)間表示的分鐘值nbsp;getMonthnbsp;返回nbsp;Datenbsp;對象中用本地時(shí)間表示的月份值nbsp;getSecondsnbsp;返回nbsp;Datenbsp;對象中用本地時(shí)間表示的秒鐘值nbsp;getTimenbsp;返回nbsp;Datenbsp;對象中的時(shí)間值nbsp;getTimezoneOffsetnbsp;返回用分鐘表示的主計(jì)算機(jī)上的時(shí)間和全球標(biāo)準(zhǔn)時(shí)間nbsp;(UTC)之間的差別nbsp;getUTCDatenbsp;返回nbsp;Datenbsp;對象中用全球標(biāo)準(zhǔn)時(shí)間nbsp;(UTC)表示的日期nbsp;getUTCDaynbsp;返回nbsp;Datenbsp;對象中用全球標(biāo)準(zhǔn)時(shí)間nbsp;(UTC)表示的一周中的日期值nbsp;getUTCFullYearnbsp;返回nbsp;Datenbsp;對象中用全球標(biāo)準(zhǔn)時(shí)間nbsp;(UTC)表示的年份值nbsp;getUTCHoursnbsp;返回nbsp;Datenbsp;對象中用全球標(biāo)準(zhǔn)時(shí)間nbsp;(UTC)表示的小時(shí)值nbsp;getUTCMillis。
有兩種方法:
方法一:在頁面的script中寫JS文檔;
<script type="text/javascript" >
//直接寫js
</script>;方法二:引入外部的JS文檔,
<script type="text/javascript" src="/uploads/shbk/你的文檔地址"></script>;備注:js文件最好的是防在頁面底部!在WEB頁面中,THML元素內(nèi),任何一個(gè)地方都可以寫JS。
還有種就是在HTML元素中直接寫js,我個(gè)人是不建議使用這種方式,在后面的維護(hù)是非常困難的,還不利于后期的查看,代碼不直觀!
Javascript對象定義的幾種方式一.工廠方式:先創(chuàng)建對象,再向?qū)ο筇砑臃椒ê蛯傩?,封閉后調(diào)用不要使用new操作符創(chuàng)建對象。
使用這種方法有很多弊端,把方法定義在工廠函數(shù)內(nèi)部的時(shí)候,每次調(diào)用的時(shí)候都會產(chǎn)生新的函數(shù)function factory(name,person,address,time){ var tmp=new Object; tmp.name=name; tmp.person=person; tmp.address=address; tmp.workTime=function(){ alert("we start to work at" + time); } return tmp;}var factory1=factory("drugs",100,"huashan Rd",10);var factory2=factory("TCMdrugs",100,"hongqiao Rd",11);factory1.workTime();factory2.workTime();//Here,factory1 and factory2 have different method對這種問題雖然可以用下面的方式改進(jìn),但是缺乏很好的封裝性function factory(name,person,address,time){ var tmp=new Object; tmp.name=name; tmp.person=person; tmp.address=address; tmp.workTime=workTime(); return tmp;}function workTime(){ alert("we start to work at" + this.time);}二,構(gòu)造函數(shù)方式,在構(gòu)造函數(shù)內(nèi)部不創(chuàng)建對象,使用this關(guān)鍵字,使用時(shí)候用new操作符,存在和工廠方式相同的問題,重復(fù)創(chuàng)建函數(shù)。function counstruct(name,person,address,time){ this.name=name; this.person=person; this.address=address; this.workTime=function(){ alert("we start to work at" + this.time); };}三.原型方式:利用prototype屬性來實(shí)現(xiàn)屬性和方法,可以通過instanceof 檢查對象類型,解決了重復(fù)創(chuàng)建函數(shù)的問題,但不能通過傳遞參數(shù)初始化屬性function Car(){}Car.prototype.color = "red";Car.prototype.doors = 4;Car.prototype.mpg = 23;Car.prototype.showColor = function(){ alert(this.color);};var car1 = new Car();var car2 = new Car();但是如果遇到下面的情況,又出問題了Car.prototype.drivers = new Array("mike", "sue");car1.drivers.push("matt");alert(car1.drivers); //outputs "mike,sue,matt"alert(car2.drivers); //outputs "mike,sue,matt"drivers是指向Array對象的指針,Car的兩個(gè)實(shí)例都指向同一個(gè)數(shù)組。
四.混合的構(gòu)造函數(shù)/原型方式:針對原型方式的解決方案function Car(sColor, iDoors, iMpg){ this.color = sColor; this.doors = iDoors; this.mpg = iMpg; this.drivers = new Array("mike", "sue");}Car.prototype.showColor = function (){ alert(this.color);};var car1 = new Car("red", 4, 23);var car2 = new Car("blue", 3, 25);car1.drivers.push("matt");alert(car1.drivers);alert(car2.drivers);五.動(dòng)態(tài)原型方式:這種方式是極力推薦的方式,避免了前面幾種方式所出現(xiàn)的問題,提供了更友好的編碼風(fēng)格function Car(sColor, iDoors, iMpg){ this.color = sColor; this.doors = iDoors; this.mpg = iMpg; this.drivers = new Array("mike", "sue"); if(typeof Car.initialized == "undefined"){ Car.prototype.showColor = function (){ alert(this.color); }; Car.initialized = true; }}var car1 = new Car("red", 4, 23);var car2 = new Car("blue", 3, 25);car1.drivers.push("matt");alert(car1.drivers);alert(car2.drivers);六.混合工廠方式:和工廠方式有些相似,但采用new關(guān)鍵字實(shí)例化,具有和工廠方式相同的弊端,不推薦使用。
聲明:本網(wǎng)站尊重并保護(hù)知識產(chǎn)權(quán),根據(jù)《信息網(wǎng)絡(luò)傳播權(quán)保護(hù)條例》,如果我們轉(zhuǎn)載的作品侵犯了您的權(quán)利,請?jiān)谝粋€(gè)月內(nèi)通知我們,我們會及時(shí)刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學(xué)習(xí)鳥. 頁面生成時(shí)間:3.337秒