1: toString方法是Object.prototype的方法,js對(duì)象都會(huì)默認(rèn)繼承這個(gè)方法。用法有兩種:
創(chuàng)新互聯(lián)建站是專業(yè)的峰峰礦網(wǎng)站建設(shè)公司,峰峰礦接單;提供成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站,網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行峰峰礦網(wǎng)站開發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!
第一種:(23).toString() 輸出“23”
第二種:(23).toString(2) 輸出"10111"
2: 常用于字符串轉(zhuǎn)數(shù)值;比如:parseFloat('3.4ss') 輸出 3.4
3: isNaN() 函數(shù)用于檢查其參數(shù)是否是非數(shù)字值。
函數(shù)就是被設(shè)計(jì)為執(zhí)行特定任務(wù)的代碼塊,有 函數(shù)名和括號(hào) ()還有參數(shù)等組成,當(dāng)然參數(shù)不是必須的。
例如: function str(val1, val2){ xxxxx }
上面函數(shù)由 函數(shù)名,函數(shù)參數(shù),和函數(shù)要執(zhí)行的語(yǔ)句組成。
代碼不是很明顯,但是通常情況是
FKeyPad是一個(gè)表單的名稱.
ReadOut則是該表單中的一個(gè)控件名稱.
focus()方法用于給對(duì)象設(shè)置焦點(diǎn)
select()方法則用于選中對(duì)象的內(nèi)容.
以上兩個(gè)語(yǔ)句作用是將焦點(diǎn)移到FKeyPad表單的ReadOut控件上,并選中該控件的內(nèi)容.
編程過程中注釋是十分重要的,在javascript(js)語(yǔ)言里面的注釋方法有三種
1.第一種是多行注釋”/**/”,一般js文件開頭,介紹作者,函數(shù)等信息。
/* author:xxx *day:2007-12-04 */
2.第二種注釋方法是最常見的”//”,在程序間隨處可見,只能注釋單行
//這是一行注釋,只能注釋單行。
//另一行注釋
3.第三種注釋不是很常見,會(huì)和html內(nèi)的注釋混淆,不推薦使用
!-這是一行注釋,只能注釋單行
第三種方法后面是不要加!這是和html注釋不一樣的地方
這個(gè)問題我知道!/*@@*/是多行注釋,。起作用的是/**/這個(gè)組合。而里面的@@兩個(gè)字符可能是作者為了最求美觀或者是要強(qiáng)調(diào)里面的內(nèi)容,沒有其他的作用。
例:
/*這是一個(gè)字符串變量*/
varteststr=“abc”;
注釋里面的字符,在腳本執(zhí)行時(shí)是忽略(不執(zhí)行的)。他的作用只是幫助更容易的閱讀代碼。
運(yùn)算符就是完成操作的一系列符號(hào),它有七類: 賦值運(yùn)算符(=,+=,-=,*=,/=,%=,=,=,|=,=)、算術(shù)運(yùn)算符(+,-,*,/,++,--,%)、比較運(yùn)算符(,,=,=,==,===,!=,!==)、邏輯運(yùn)算符(||,,!)、條件運(yùn)算(?:)、位移運(yùn)算符(|,,,,~,^)和字符串運(yùn)算符( + )。
所以,~是位移運(yùn)算符。
~~true == 1
~~false == 0
~~"" == 0
~~[] == 0
~~undefined ==0
~~!undefined == 1
~~null == 0
~~!null == 1
一、算術(shù)運(yùn)算符:
1、運(yùn)算符:
“+”:功能:對(duì)數(shù)字進(jìn)行代數(shù)求和;對(duì)字符串進(jìn)行連接操作;將一個(gè)數(shù)值轉(zhuǎn)換為字符串(數(shù)值+空字符串)。
“-”:功能:對(duì)操作數(shù)進(jìn)行取反操作;對(duì)數(shù)字進(jìn)行減法操作;將字符串轉(zhuǎn)換成數(shù)值 (數(shù)值型型字符串-0)。
“*”:功能:對(duì)兩個(gè)運(yùn)算數(shù)進(jìn)行乘法運(yùn)算;同號(hào)得正,異號(hào)得負(fù)。
“/”:功能:對(duì)兩個(gè)運(yùn)算數(shù)進(jìn)行除法運(yùn)算;同號(hào)得正,異號(hào)得負(fù)。
“%”:功能:返回兩個(gè)除數(shù)的余數(shù);和第一個(gè)運(yùn)算數(shù)的符號(hào)相同。
2、復(fù)合賦值運(yùn)算符: +=、-=、*=、/=、%=
3、自增與自減:
功能相反:++ 對(duì)唯一的運(yùn)算數(shù)進(jìn)行遞增操作(每次加1);-- 對(duì)唯一的運(yùn)算數(shù)進(jìn)行遞減操作(每次減1);
規(guī)則相同:運(yùn)算數(shù)必須是一個(gè)變量、數(shù)組的一個(gè)元素或者對(duì)象的屬性;如果運(yùn)算數(shù)是非數(shù)值的,運(yùn)算符會(huì)將它轉(zhuǎn)成數(shù)值;
符號(hào)位置決定運(yùn)算結(jié)果:符號(hào)位于運(yùn)算數(shù)之前(先進(jìn)行遞增火遞減操作,再進(jìn)行求值);符號(hào)位于運(yùn)算數(shù)之后(先求值,再進(jìn)行遞增或者遞減操作)
二、關(guān)系運(yùn)算符:
1、大小關(guān)系檢測(cè):
運(yùn)算符:、=、=、;
操作規(guī)則:數(shù)值與數(shù)值的比較——比較他們的帶數(shù)值;僅一個(gè)運(yùn)算數(shù)是數(shù)值——將另一個(gè)運(yùn)算數(shù)轉(zhuǎn)換成數(shù)值,并比較他們的代數(shù)值;字符串間的比較——逐字符比較他們的Unicode數(shù)值;字符串與非數(shù)值的比較——將運(yùn)算數(shù)轉(zhuǎn)換成字符串并進(jìn)行比較;運(yùn)算數(shù)即非數(shù)字也非字符串——轉(zhuǎn)換為數(shù)值或者字符串進(jìn)行比較;運(yùn)算數(shù)無法被轉(zhuǎn)換成數(shù)值或者字符串——返回值false;與NaN的比較——返回值為false。
2、等值關(guān)系檢測(cè):
相等比較:操作符有== 和!= ;類型轉(zhuǎn)換(布爾值——true為1,false為0;對(duì)象——調(diào)用valueOf() 得到基本類型;字符串與數(shù)值的比較——字符串轉(zhuǎn)換為數(shù)值);比較原則(null與undefined——相等;NaN ——與任何數(shù)值都不相等包括其自身;對(duì)象——是否屬于同一對(duì)象 是為== 否為!=)。
相同比較:操作符有===和!== 比較兩個(gè)運(yùn)算數(shù)的返回值及數(shù)據(jù)類型是否相同;比較的原則(值類型間比較——只有數(shù)據(jù)類型相同,且數(shù)值相等時(shí)才能夠相同;值類型與引用類型比較——肯定不相同;引用類型間比較——比較它們的引用值即內(nèi)存地址)
三、對(duì)象運(yùn)算符:
in:判斷左側(cè)運(yùn)算數(shù)是否為右側(cè)運(yùn)算數(shù)的成員。
instancesof:判斷對(duì)象實(shí)例是否屬于某個(gè)類或者構(gòu)造函數(shù)。
new:根據(jù)構(gòu)造函數(shù)創(chuàng)建一個(gè)新的對(duì)象,并初始化該對(duì)象。
delete:刪除指定對(duì)象的屬性、數(shù)組元素或者變量。
.及[]:存取對(duì)象和數(shù)組元素。
():函數(shù)調(diào)用,改變運(yùn)算運(yùn)算符優(yōu)先等級(jí)。
四、邏輯運(yùn)算符:
1、!邏輯非:
返回值:true(空字符串、0、null、NaN、undefined),false(對(duì)象、非空字符串、非0數(shù)值);
特性:如果運(yùn)算數(shù)的值為false則返回true,否則返回false;聯(lián)系2次!,可將任意類型轉(zhuǎn)為布爾型值。
2、邏輯與:
規(guī)則:第一個(gè)操作數(shù)是對(duì)象——返回第二個(gè)操作數(shù);第二個(gè)操作數(shù)是對(duì)象——第一個(gè)操作數(shù)值為true時(shí)返回該對(duì)象;兩個(gè)操作數(shù)都是對(duì)象——返回第二個(gè)操作數(shù);一個(gè)操作數(shù)是null——返回null;一個(gè)操作數(shù)是NaN——返回NaN;一個(gè)操作數(shù)是undefined——返回undefined。
特性:當(dāng)且僅當(dāng)兩個(gè)運(yùn)算數(shù)的值都是true時(shí),才返回true,否則返回false;短路操作——當(dāng)?shù)匾粋€(gè)操作數(shù)的值是false則不在對(duì)第二個(gè)操作數(shù)進(jìn)行求值。
3、||邏輯或:
規(guī)則:第一個(gè)操作數(shù)是對(duì)象——返回第一個(gè)操作數(shù);第一個(gè)操作數(shù)值為false——返回第二個(gè)操作數(shù);兩個(gè)操作數(shù)都是對(duì)象——返回第一個(gè)操作數(shù);兩個(gè)操作數(shù)都是null——返回null;兩個(gè)操作數(shù)都是NaN——返回NaN;兩個(gè)操作數(shù)都是undefined——返回undefined。
特性:當(dāng)且僅當(dāng)兩個(gè)運(yùn)算數(shù)的值都是false時(shí),才返回false,否則返回true;如果第一個(gè)操作數(shù)值為true,則不會(huì)對(duì)第二個(gè)操作數(shù)進(jìn)行求值。
五、位運(yùn)算符:
1、基礎(chǔ)知識(shí):
類型——有符號(hào)(數(shù)值位31位,符號(hào)位第32位 0為正1為負(fù)),無符號(hào)(只能正數(shù),第32為表示數(shù)值,數(shù)值范圍可加大);數(shù)值范圍——-2147483648~2147483648;存儲(chǔ)方式——正(純2進(jìn)制存儲(chǔ),31位中每一位表示2的冪,用0補(bǔ)存無用位),負(fù)(2進(jìn)制補(bǔ)碼存儲(chǔ),補(bǔ)碼計(jì)算步驟確定該數(shù)字的非負(fù)版本的二進(jìn)制表示求得二進(jìn)制反碼,即要把0替換為1,把1替換為0,在二進(jìn)制反碼上加1);當(dāng)0來處理的特殊值——NaN和Infinity。
2、邏輯位運(yùn)算:
返回值為1——按位非~(0) ;按位與(對(duì)應(yīng)位全為1);按位或|(任何一位是1);按位異或^(既不同時(shí)為0,也不同時(shí)為1)。
返回值為0——按位非~(1);按位與(任何一位是0);按位或|(對(duì)應(yīng)位全是0);按位異或^(對(duì)應(yīng)位全為0或全為1)。
3、位移操作:
左移——將數(shù)值的所有位左移指定的位數(shù);所有空位用0補(bǔ)存;左移1位對(duì)其乘以2,左移2位對(duì)其乘以4,以此類推。
有符號(hào)右移——將數(shù)值的所有位右移指定的位數(shù);移除的味被舍棄;保留符號(hào)位;右移1位對(duì)其除2,右移2位對(duì)其除4,以此類推。
無符號(hào)右移——正數(shù)(與有符號(hào)右移結(jié)果相同);負(fù)數(shù)(會(huì)出現(xiàn)無限大的數(shù)值)
4、復(fù)合賦值運(yùn)算符:位操作符與等號(hào)結(jié)合,復(fù)合賦值不會(huì)有性能方面的提升。
六、其它運(yùn)算符:
?: ——條件運(yùn)算符,簡(jiǎn)介的if else。
typeof——類型判斷運(yùn)算符。
,——逗號(hào),在一行語(yǔ)句中執(zhí)行多個(gè)不同的操作。
void——舍棄運(yùn)算數(shù)的值,返回undefined作為表達(dá)式的值。