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