Javascript入門學(xué)習(xí)第一篇 js基礎(chǔ)第1/2頁(yè)
更新時(shí)間:2008年07月06日 09:40:57 作者:
這是我看了DOM編程藝術(shù),悟透JavaScript,javascript權(quán)威指南5做的筆記,我資質(zhì)不深,不能寫出高深的文章,
如果你覺(jué)得筆記寫得不好,可以不看我以后的。這篇文章就當(dāng)作浪費(fèi)你幾分鐘。
Javascript學(xué)習(xí)第一篇 js基礎(chǔ)
1 , javascript字符集:
javascript采用的是Unicode字符集編碼。
為什么要采用這個(gè)編碼呢?
原因很簡(jiǎn)單,16位的Unicode編碼可以表示地球人的任何書(shū)面語(yǔ)言。這是語(yǔ)言 國(guó)際化的一個(gè)重要特征。(大家也許見(jiàn)過(guò)用中文寫腳本,比如:function 我的函數(shù)() {} );
Javascript中每個(gè)字符都是用2個(gè)字節(jié)表示的。(因?yàn)槭?6位編碼)
2 ,大小寫敏感:
js是一種區(qū)分大小寫的語(yǔ)言。
注意下:以前我也犯過(guò)的錯(cuò)誤。
HTML是不區(qū)分大小寫的。經(jīng)??匆?jiàn)有人這么寫,
<input type=”button” onClick=”a()” /> (這樣寫是對(duì)的)
如果放到JS中,就必須使用onclick(小寫哦?。?
同時(shí)XHTML中也只能使用小寫。
這個(gè)我們并不需要太關(guān)心,象這種問(wèn)題,其實(shí)都可以自己給自己定一個(gè)標(biāo)準(zhǔn),自己寫程序的時(shí)候全部小寫。
另外每行程序后 分號(hào) 也是一樣,我們都寫上。
3 ,注釋:
單行:
// 注釋1
/* 注釋2 */
多行:
/* 注釋3
* 注釋3
* 注釋3
*/
4 ,標(biāo)識(shí)符:
標(biāo)識(shí)符就是一個(gè)名字,用來(lái)命名變量和函數(shù)。
規(guī)則:第一個(gè)字母必須是字母,下劃線(_),或美圓符號(hào)($)。
為什么第一個(gè)字母不能為數(shù)字?
如果第一個(gè)為數(shù)字,js很容易就把它當(dāng)作數(shù)字處理了,那么命名就沒(méi)意義了,js規(guī)定了后,就很容易的區(qū)分了標(biāo)識(shí)符和數(shù)字了。
5 ,直接量:
就是程序中直接顯示出來(lái)的數(shù)據(jù)值。
比如:12 , 1.2 , “ hello “ , true , null , [1,2,3,4]
這些都是直接量。
6 ,保留字和關(guān)鍵字:
具體是哪些,可以去google.cn。
其實(shí)我們只要不取一些特郁悶的名字,都不會(huì)沖突的。
7 ,js數(shù)據(jù)類型:
3種基本的類型;數(shù)字,字符串和布爾值。
2種小數(shù)據(jù)類型:null 和 undefined . (為什么叫小數(shù)據(jù)類型?因?yàn)樗麄冎欢x了一個(gè)值)
1種復(fù)合類型:object. (在這個(gè)類型中,它的值可以是基本數(shù)據(jù)類型,也可以是復(fù)合類型,比如其他的object. )
注意:在對(duì)象中有一個(gè)特殊的對(duì)象----function.(它是一個(gè)可以執(zhí)行代碼的對(duì)象.)
其他的一些對(duì)象:
數(shù)組:
Date類 : 是日期的對(duì)象。
RegExp類: 正則表達(dá)式的對(duì)象。
Error 類:js中發(fā)生錯(cuò)誤的對(duì)象。
8 ,使用數(shù)據(jù)類型注意的地方:
1):數(shù)字:
由于數(shù)字有什么8進(jìn)制,10進(jìn)制,16進(jìn)制等。。。
八進(jìn)制:var num = 011; //以"0"開(kāi)頭
十六進(jìn)制:var num =0x1f; //以"0x"開(kāi)頭
所以對(duì)于js這個(gè)都能識(shí)別的語(yǔ)言來(lái)說(shuō),就必須得注意。
alert(377); // 377
alert(0377); //255 = 3 * 64 + 7 * 8 + 7 * 1
進(jìn)行算術(shù)運(yùn)算有個(gè)重要的對(duì)象:Math.
具體可以去網(wǎng)上下載手冊(cè),查詢里面的方法。
2個(gè)有用的函數(shù):isNaN()和isFinite()
isNaN() : 用于檢查其參數(shù)是否是非數(shù)字值。// 提示:是非數(shù)字哦。(not a number)
document.write(isNaN(0) ) //返回false
document.write(isNaN(5-2) ) //返回false
document.write(isNaN ("Hello") ) //返回true
isFinite(number) 函數(shù)用于檢查其參數(shù)是否是無(wú)窮大。
如果number是有限的,則返回true. 如果 number 是 NaN(非數(shù)字)或者是無(wú)窮大,則返回false;
2):字符:
‘you're right';
這樣寫的話js會(huì)誤以為 在you字母后就結(jié)束了,引起錯(cuò)誤。
所以當(dāng)遇到這種情況的時(shí)候,必須用到轉(zhuǎn)義。
我們可以這么寫:
‘you\'re right';
另外:你可以 google.com搜索 轉(zhuǎn)義序列表 。
字符串的簡(jiǎn)單操作例子:
var a = "cssrain";
var b = a.charAt(a.length-1); // 從字符串a(chǎn)中截取最后一個(gè)字符。 輸出:n
var c = a.substring(0 , 2); // 從字符串a(chǎn)中截取第1,2個(gè)字符。 輸出:cs
var d = a.indexOf('s'); // 從字符串a(chǎn)中查找第一個(gè)s出現(xiàn)的位置。 輸出:1
從例子可以看出,基數(shù)都是從0開(kāi)始的。
var e = a.substring( a.length-1 ); //可以看出,substring第2個(gè)參數(shù)不寫的話,
//默認(rèn) 是到最后。
var f = a.substring( a.length-1 , a.length);//等價(jià)于
3):數(shù)字跟字符之間的轉(zhuǎn)換:
數(shù)字轉(zhuǎn)字符:
var number_to_string = number + “ ”; //方法1:添加一個(gè)空的字符串。
var number_to_string =String(number); //方法2:使用String()函數(shù)。
var number_to_string =number. toString(); //方法3:使用toString()函數(shù)。
注:toString()方法默認(rèn)是以10進(jìn)制轉(zhuǎn)換。
如果要使用8進(jìn)制轉(zhuǎn)換可以 這么寫: number. toString(8);
字符轉(zhuǎn)數(shù)字:
var string_to_number = string – 0 ; //方法1: 字符串減去0。
var string_to_number = Number(string) ; //方法2:使用Number ()函數(shù)。
var string_to_number = parseInt(string) ; //方法3:使用parseInt ()函數(shù)。
方法1中不能 用string+0 ; 這樣會(huì)導(dǎo)致字符串拼接,而不是類型轉(zhuǎn)換。
方法2 中的Number函數(shù)轉(zhuǎn)換,比較嚴(yán)格。
比如:
var a = "19cssrain86";
var b = Number(a); //輸出NaN.
如果我們使用方法3。
var c = parseInt(a); //輸出 19
可以看出parseInt()會(huì)自動(dòng)忽略非數(shù)字的部分。
parseInt()只取整數(shù)部分,忽略小數(shù)部分。
parseFloat()會(huì)把小數(shù)部分也取到。
和toString()一樣,parseInt也有進(jìn)制,默認(rèn)是10進(jìn)制。
如果想使用8進(jìn)制,可以這么寫: parseInt( “077” , 8 ); // 輸出63 = 7 * 8 + 7
當(dāng)字符以0開(kāi)頭的時(shí)候,我們必須把 第二個(gè)參數(shù) 指明,不然js可能會(huì)以8進(jìn)制去轉(zhuǎn)換。
4):布爾類型:
布爾在數(shù)字環(huán)境中:true 轉(zhuǎn)換為 1 ,false 轉(zhuǎn)換為 0 。
在字符環(huán)境中:true 轉(zhuǎn)換為 “true” ,false 轉(zhuǎn)換為 “false” 。
布爾轉(zhuǎn)換:
var x_to_Boolean = Boolean(x); //方法1:使用Boolean ()函數(shù)。
var x_to_Boolean = !x; //方法2:使用 感嘆號(hào)。
1 , javascript字符集:
javascript采用的是Unicode字符集編碼。
為什么要采用這個(gè)編碼呢?
原因很簡(jiǎn)單,16位的Unicode編碼可以表示地球人的任何書(shū)面語(yǔ)言。這是語(yǔ)言 國(guó)際化的一個(gè)重要特征。(大家也許見(jiàn)過(guò)用中文寫腳本,比如:function 我的函數(shù)() {} );
Javascript中每個(gè)字符都是用2個(gè)字節(jié)表示的。(因?yàn)槭?6位編碼)
2 ,大小寫敏感:
js是一種區(qū)分大小寫的語(yǔ)言。
注意下:以前我也犯過(guò)的錯(cuò)誤。
HTML是不區(qū)分大小寫的。經(jīng)??匆?jiàn)有人這么寫,
<input type=”button” onClick=”a()” /> (這樣寫是對(duì)的)
如果放到JS中,就必須使用onclick(小寫哦?。?
同時(shí)XHTML中也只能使用小寫。
這個(gè)我們并不需要太關(guān)心,象這種問(wèn)題,其實(shí)都可以自己給自己定一個(gè)標(biāo)準(zhǔn),自己寫程序的時(shí)候全部小寫。
另外每行程序后 分號(hào) 也是一樣,我們都寫上。
3 ,注釋:
單行:
// 注釋1
/* 注釋2 */
多行:
/* 注釋3
* 注釋3
* 注釋3
*/
4 ,標(biāo)識(shí)符:
標(biāo)識(shí)符就是一個(gè)名字,用來(lái)命名變量和函數(shù)。
規(guī)則:第一個(gè)字母必須是字母,下劃線(_),或美圓符號(hào)($)。
為什么第一個(gè)字母不能為數(shù)字?
如果第一個(gè)為數(shù)字,js很容易就把它當(dāng)作數(shù)字處理了,那么命名就沒(méi)意義了,js規(guī)定了后,就很容易的區(qū)分了標(biāo)識(shí)符和數(shù)字了。
5 ,直接量:
就是程序中直接顯示出來(lái)的數(shù)據(jù)值。
比如:12 , 1.2 , “ hello “ , true , null , [1,2,3,4]
這些都是直接量。
6 ,保留字和關(guān)鍵字:
具體是哪些,可以去google.cn。
其實(shí)我們只要不取一些特郁悶的名字,都不會(huì)沖突的。
7 ,js數(shù)據(jù)類型:
3種基本的類型;數(shù)字,字符串和布爾值。
2種小數(shù)據(jù)類型:null 和 undefined . (為什么叫小數(shù)據(jù)類型?因?yàn)樗麄冎欢x了一個(gè)值)
1種復(fù)合類型:object. (在這個(gè)類型中,它的值可以是基本數(shù)據(jù)類型,也可以是復(fù)合類型,比如其他的object. )
注意:在對(duì)象中有一個(gè)特殊的對(duì)象----function.(它是一個(gè)可以執(zhí)行代碼的對(duì)象.)
其他的一些對(duì)象:
數(shù)組:
Date類 : 是日期的對(duì)象。
RegExp類: 正則表達(dá)式的對(duì)象。
Error 類:js中發(fā)生錯(cuò)誤的對(duì)象。
8 ,使用數(shù)據(jù)類型注意的地方:
1):數(shù)字:
由于數(shù)字有什么8進(jìn)制,10進(jìn)制,16進(jìn)制等。。。
八進(jìn)制:var num = 011; //以"0"開(kāi)頭
十六進(jìn)制:var num =0x1f; //以"0x"開(kāi)頭
所以對(duì)于js這個(gè)都能識(shí)別的語(yǔ)言來(lái)說(shuō),就必須得注意。
alert(377); // 377
alert(0377); //255 = 3 * 64 + 7 * 8 + 7 * 1
進(jìn)行算術(shù)運(yùn)算有個(gè)重要的對(duì)象:Math.
具體可以去網(wǎng)上下載手冊(cè),查詢里面的方法。
2個(gè)有用的函數(shù):isNaN()和isFinite()
isNaN() : 用于檢查其參數(shù)是否是非數(shù)字值。// 提示:是非數(shù)字哦。(not a number)
document.write(isNaN(0) ) //返回false
document.write(isNaN(5-2) ) //返回false
document.write(isNaN ("Hello") ) //返回true
isFinite(number) 函數(shù)用于檢查其參數(shù)是否是無(wú)窮大。
如果number是有限的,則返回true. 如果 number 是 NaN(非數(shù)字)或者是無(wú)窮大,則返回false;
2):字符:
‘you're right';
這樣寫的話js會(huì)誤以為 在you字母后就結(jié)束了,引起錯(cuò)誤。
所以當(dāng)遇到這種情況的時(shí)候,必須用到轉(zhuǎn)義。
我們可以這么寫:
‘you\'re right';
另外:你可以 google.com搜索 轉(zhuǎn)義序列表 。
字符串的簡(jiǎn)單操作例子:
var a = "cssrain";
var b = a.charAt(a.length-1); // 從字符串a(chǎn)中截取最后一個(gè)字符。 輸出:n
var c = a.substring(0 , 2); // 從字符串a(chǎn)中截取第1,2個(gè)字符。 輸出:cs
var d = a.indexOf('s'); // 從字符串a(chǎn)中查找第一個(gè)s出現(xiàn)的位置。 輸出:1
從例子可以看出,基數(shù)都是從0開(kāi)始的。
var e = a.substring( a.length-1 ); //可以看出,substring第2個(gè)參數(shù)不寫的話,
//默認(rèn) 是到最后。
var f = a.substring( a.length-1 , a.length);//等價(jià)于
3):數(shù)字跟字符之間的轉(zhuǎn)換:
數(shù)字轉(zhuǎn)字符:
var number_to_string = number + “ ”; //方法1:添加一個(gè)空的字符串。
var number_to_string =String(number); //方法2:使用String()函數(shù)。
var number_to_string =number. toString(); //方法3:使用toString()函數(shù)。
注:toString()方法默認(rèn)是以10進(jìn)制轉(zhuǎn)換。
如果要使用8進(jìn)制轉(zhuǎn)換可以 這么寫: number. toString(8);
字符轉(zhuǎn)數(shù)字:
var string_to_number = string – 0 ; //方法1: 字符串減去0。
var string_to_number = Number(string) ; //方法2:使用Number ()函數(shù)。
var string_to_number = parseInt(string) ; //方法3:使用parseInt ()函數(shù)。
方法1中不能 用string+0 ; 這樣會(huì)導(dǎo)致字符串拼接,而不是類型轉(zhuǎn)換。
方法2 中的Number函數(shù)轉(zhuǎn)換,比較嚴(yán)格。
比如:
var a = "19cssrain86";
var b = Number(a); //輸出NaN.
如果我們使用方法3。
var c = parseInt(a); //輸出 19
可以看出parseInt()會(huì)自動(dòng)忽略非數(shù)字的部分。
parseInt()只取整數(shù)部分,忽略小數(shù)部分。
parseFloat()會(huì)把小數(shù)部分也取到。
和toString()一樣,parseInt也有進(jìn)制,默認(rèn)是10進(jìn)制。
如果想使用8進(jìn)制,可以這么寫: parseInt( “077” , 8 ); // 輸出63 = 7 * 8 + 7
當(dāng)字符以0開(kāi)頭的時(shí)候,我們必須把 第二個(gè)參數(shù) 指明,不然js可能會(huì)以8進(jìn)制去轉(zhuǎn)換。
4):布爾類型:
布爾在數(shù)字環(huán)境中:true 轉(zhuǎn)換為 1 ,false 轉(zhuǎn)換為 0 。
在字符環(huán)境中:true 轉(zhuǎn)換為 “true” ,false 轉(zhuǎn)換為 “false” 。
布爾轉(zhuǎn)換:
var x_to_Boolean = Boolean(x); //方法1:使用Boolean ()函數(shù)。
var x_to_Boolean = !x; //方法2:使用 感嘆號(hào)。
您可能感興趣的文章:
- 如何學(xué)習(xí)Javascript入門指導(dǎo)
- ExtJS 學(xué)習(xí)專題(一) 如何應(yīng)用ExtJS(附實(shí)例)
- JavaScript入門學(xué)習(xí)書(shū)籍推薦
- Javascript 入門基礎(chǔ)學(xué)習(xí)
- Javascript入門學(xué)習(xí)第八篇 js dom節(jié)點(diǎn)屬性說(shuō)明
- 入門基礎(chǔ)學(xué)習(xí) ExtJS筆記(一)
- Javascript入門學(xué)習(xí)第九篇 Javascript DOM 總結(jié)
- JavaScript 學(xué)習(xí)初步 入門教程
- JavaScript的學(xué)習(xí)入門整理篇
- 如何學(xué)JavaScript?前輩的經(jīng)驗(yàn)之談
相關(guān)文章
JavaScript link方法入門實(shí)例(給字符串加上超鏈接)
這篇文章主要介紹了JavaScript link方法入門實(shí)例,link方法用于給字符串加上超鏈接,需要的朋友可以參考下2014-10-10簡(jiǎn)介JavaScript中的setHours()方法的使用
這篇文章主要介紹了簡(jiǎn)介JavaScript中的setHours()方法的使用,是JS入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-06-06uni-app自定義組件components導(dǎo)入失敗或頁(yè)面不顯示文本等解決方法
這篇文章主要給大家介紹了關(guān)于uni-app自定義組件components導(dǎo)入失敗或頁(yè)面不顯示文本等的解決方法,眾所周知Uni-app支持使用自定義組件,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下2023-08-08js中的setInterval和setTimeout使用實(shí)例
這篇文章主要介紹了javascript中的兩個(gè)定時(shí)執(zhí)行函數(shù)setInterval和setTimeout的用法,需要的朋友可以參考下2014-05-05