天天看點

javascript學習1:初識javascript

1、使用Javascript

<script type="text/javascript">
	document.writeln("hello");
</script>
           

2、使用語句

通常以分号結尾,但是不用分号也是可以的,加上了友善閱讀。

3、定義使用函數

function myFunc() {
	document.writeln("this is a statement");
}
           
3.1 定義帶參數的函數
function myFunc(name, weather) {
	document.writeln("this is a statement");
}
           
3.2 定義會傳回結果的函數
function myFunc(name) {
	document.writeln("this is a statement");
    return ("hello" + name);
}
           

4、使用變量和類型

定義變量使用var關鍵字,在定義的同時還可以指派,定義在函數中的變量為局部變量,直接script元素中定義的變量為全局變量。

4.1 使用基本類型

1)字元串類型

string類型的值可以用夾在一對雙引号或單引号之間的一串字元表示

2)布爾類型

boolean類型有兩個值:true和false。

3)數值類型

整數和浮點數(也稱實數)都用number類型表示

var pi = 3.14;
var day = 7;
var value = 0xFFFF;
           
4.2 建立對象

JavaScript支援對象的概念。有多種方法可以用來建立對象。

1)使用對象字面量

用對象字面量的方式可以一口氣定義一個對象及其屬性

var myData = {
    name: "aa",
    weather: "sunny"
};
           

2)将函數用做方法

對象可以添加屬性,也能添加函數。屬于一個對象的函數稱為其方法

var myData = {
    name: "aa",
    weather: "sunny",
    print: function() {
        document.writeln("hello");
    }
};
           

4.3 使用對象

1)讀取和修改屬性值

對象最顯而易見的操作是讀取或修改屬性值。

var myData = {
    name: "aa",
    weather: "sunny",
    print: function() {
        document.writeln("hello");
    }
};
myData.name = "joe";
myDate["weather"] = "rainint";
           

2)枚舉對象屬性

要枚舉對象屬性可以使用for. . .in語句。

var myData = {
    name: "aa",
    weather: "sunny",
    print: function() {
        document.writeln("hello");
    }
};
for (var prop in myDate) {
    document.writeln(prop);
}
           

3)增删屬性和方法

就算是用對象字面量生成的對象,也可以為其定義新屬性。

var myData = {
    name: "aa",
    weather: "sunny",
};
myData.day = "money"; //加屬性
myData.sayHello = function() { //加方法
    document.writeln("hello");
}
delete myData.name; //删屬性
delete myData["weather"];//删屬性
delete myData.sayHello;//删方法
           

4)判斷對象是否有某個屬性

可以用in表達式判斷對象是否具有某個屬性。

var myData = {
    name: "aa",
    weather: "sunny",
};

var hasName = "name" in myData;
           

5、使用javascript運算符

運算符 說明
++,– 前置或後置自增自減
+,-,*,/,% 加、減、乘、除、求餘
<,<=,>,>= 小于、小于等于、大于、大于等于
==,!= 相等和不相等
=,! 等同和不等同
&&,|| 邏輯與、邏輯或
= 指派
+ 字元串連接配接
?: 字元串連接配接
5.1 相等和等同運算符

相等和等同運算符需要特别說明一下。相等運算符會嘗試将操作數轉換為同一類型以便判斷是否相等。隻要明白其工作方式,這就是一個很友善的特性。

從本質上講,相等運算符測試兩個值是否相等,不管其類型。如果想判斷值和類型是否都相同,那麼應該使用的是等同運算符(===,由三個等号組成。相等運算符是由兩個等号組成)。

5.2 顯式類型轉換

字元串連接配接運算符(+)比加法運算符(也是+)優先級更高。這可能會引起混亂,這是因為JavaScript在計算結果時會自動進行類型轉換,其結果未必跟預期一樣。

1)将數值轉換為字元串

如果想把多個數值類型變量作為字元串連接配接起來,可以用toString方法将數值轉換為字元串。

方法 說明
toString() 轉換成十進制
toString(2) 轉換成2進制
toString(8) 轉換成8進制
toString(16) 轉換成16進制
toFixed(n) 以小數點後有n位數字的形式表示實數
toExponential(n) 以指數表示法表示數值。尾數的小數點前後分别有1位數字和n位數字
toPrecision(n) 用n位有效數字表示數值,在必要的情況下使用指數表示法

2)将字元串轉換為數值

函數 說明
Number(str) 通過分析指定字元串,生成一個整數或實數值
parseInt(str) 通過分析指定字元串,生成一個整數值
parseFloat(str) 通過分析指定字元串,生成一個整數或實數值

6、使用數組

var myArray = new Array();
myArray[0] = 100;
myArray[1] = "adam";
           
6.1 使用數組字面量
6.2 讀取和修改數組内容
6.3 枚舉數組内容
for (var i = 0; i < myArray.length; i++) {
    documeent.writeln(myArray[i]);
}
           
6.4 使用内置的數組和方法
方法 說明 傳回
concat(otherArray) 将數組和參數所指數組的内容合并為一個新數組。可指定多個數組 數組
join(separator) 将所有數組元素連接配接為一個字元串。各元素内容用參數指定的字元分隔 字元串
pop() 把數組當做棧使用,删除并傳回數組的最後一個元素 對象
push(item) 把數組當做棧使用,将指定的資料添加到數組中 void
reverse() 就地反轉數組元素的次序 數組
shift() 類似pop,但操作的是數組的第一個元素 對象
slice(start,end) 傳回一個子數組 數組
sort() 就地對數組元素排序 數組
unshift(item) 類似push,但新元素被插到數組的開頭位置 void

7、處理錯誤

JavaScript用try. …catch語句處理錯誤。一般不用操心錯誤處理方面的事。

try {
    var myArray;
} catch(e) {
    document.writeln("Error:" + e);
} finally {
    document.writeln("statements");
}
           

Error對象:

屬性 說明 傳回
message 對錯誤條件的說明 字元串
name 錯誤的名稱,預設為Error 字元串
number 該錯誤的錯誤代号(如果有的話) 數值

8、比較undefined和null值

JavaScript中有兩個特殊值: undefined和null,在比較它們的時候需要留心。在讀取未指派的變量或試圖讀取對象沒有的屬性時得到的就是undefined值。

8.1 檢查變量或屬性是否為undefined或null

使用if語句和邏輯非運算符

if (!myData.city){ //如果變量或屬性為null或undefined,則轉換而得的布爾值為false;
}
           
8.2 區分null和undefined

在比較兩個值時,所用辦法應視需要而定。如果想同等對待undefined值和null值,那麼應該使用相等運算符(),讓JavaScript進行類型轉換。此時值為undefined的變量會被認為與值為null的變量相等。如果要區分null和undefined,則使用等同運算符(=)。

9、常用的javascript工具

9.1 使用javascript調試器

現代浏覽器都配備了精良的JavaScript調試器(或以插件的方式支援這一功能,如MozillaFirefox的插件Firebug )。它們可以用來設定斷點、探查錯誤和逐句執行腳本。在遇到腳本方面的問題時首先應該想到的就是向調試器求助。我喜歡的浏覽器是谷歌的Chrome,并能熟練應用其内置調試器。不過在碰到特别難纏的問題時,我會使用Firefox上的Firebug。這個調試器在對付複雜情況時顯得更為強大。

9.2 使用javascipt庫

jquery等

繼續閱讀