亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Javascript筆記一 js以及json基礎(chǔ)使用說明

 更新時間:2010年05月22日 22:06:41   作者:  
JavaScript中的數(shù)據(jù)很簡潔的。簡單數(shù)據(jù)只有 undefined, null, boolean, number和string這五種,而復(fù)雜數(shù)據(jù)只有一種,即object。
JavaScript中的代碼只體現(xiàn)為一種形式,就是function。

注意:以上單詞都是小寫的,不要和Number, String, Object, Function等JavaScript內(nèi)置函數(shù)混淆,JavaScript語言是區(qū)分大小寫。

typeof(null)返回object,但null并非object。

JavaScript的代碼就只有function一種形式,function就是函數(shù)的類型。函數(shù)的寫法有“定義式”和“變量式”。

定義式的函數(shù)語句會優(yōu)先執(zhí)行。函數(shù)定義執(zhí)行完之后,才會按順序執(zhí)行其他語句代碼,JavaScript是一段段地執(zhí)行的。

我們來看看下面的代碼:
復(fù)制代碼 代碼如下:

var myfunc = function ()
{
alert("hello");
};
myfunc(); //第一次調(diào)用myfunc,輸出hello
myfunc = function ()
{
alert("yeah");
};
myfunc(); //第二次調(diào)用myfunc,將輸出yeah


這個程序運行的結(jié)果告訴我們:在第一次調(diào)用函數(shù)之后,函數(shù)變量又被賦予了新的函數(shù)代碼體,使得第二次調(diào)用該函數(shù)時,出現(xiàn)了不同的輸出。

好了,我們又來把上面的代碼改成定義式的函數(shù)形式:

復(fù)制代碼 代碼如下:

function myfunc ()
{
alert("hello");
};
myfunc(); //這里調(diào)用myfunc,輸出yeah而不是hello
function myfunc ()
{
alert("yeah");
};
myfunc(); //這里調(diào)用myfunc,當(dāng)然輸出yeah


按理說,兩個簽名完全相同的函數(shù),在其他編程語言中應(yīng)該是非法的。但在JavaScript中,這沒錯。JavaScript執(zhí)行引擎并非一行一行地分析和執(zhí)行程序,而是一段一段地分析執(zhí)行的。在第一次調(diào)用myfunc之前,第一個函數(shù)語句定義的代碼邏輯,已被第二個函數(shù)定義語句覆蓋了。所以,兩次都調(diào)用都是執(zhí)行最后一個函數(shù)邏輯了。

創(chuàng)建對象

復(fù)制代碼 代碼如下:

<script type="text/javascript">
function test() {
var bo = {}; //建立一個對象
bo.姓名 = "張三"; //對象的一個屬性
bo.年齡 = 18;
bo.showInfo = function() { alert(bo.姓名 + " " + bo.年齡); }; //對象的一個方法
alert(bo["姓名"]); //可以將對象當(dāng)數(shù)組以屬性名作為下標(biāo)來訪問屬性
bo["showInfo"](); //可以將對象當(dāng)數(shù)組以方法名作為下標(biāo)來調(diào)用方法
//遍歷對象里所有的屬性和方法,并輸出其類型
for (var s in bo) {
alert(s + " 是 " + typeof (bo[s]));
}
}
</script>


JSON為創(chuàng)建對象提供了非常簡單的方法,JavaScript Object Notation(縮寫JSON),翻譯為中文就是“JavaScript對象表示法”。

創(chuàng)建一個沒有任何屬性的對象:
var o = {};

創(chuàng)建一個對象并設(shè)置屬性及初始值:
var person = {name: "Angel", age: 18, married: false};

創(chuàng)建一個對象并設(shè)置屬性和方法:
var speaker = {text: "Hello World", say: function(){alert(this.text)}};

創(chuàng)建一個更復(fù)雜的對象,嵌套其他對象和對象數(shù)組等:
復(fù)制代碼 代碼如下:

var company =
{
name: "Microsoft",
product: "softwares",
chairman: {name: "Bill Gates", age: 53, Married: true},
employees: [{name: "Angel", age: 26, Married: false}, {name: "Hanson", age: 32, Marred: true}],
readme: function() {document.write(this.name + " product " + this.product);}
};


JSON的形式就是用大括“{}”號包括起來的項目列表,每一個項目間并用逗號“,”分隔,而項目就是用冒號“:”分隔的屬性名和屬性值。這是典型的字典表示形式,也再次表明了 JavaScript里的對象就是字典結(jié)構(gòu)。不管多么復(fù)雜的對象,都可以被一句JSON代碼來創(chuàng)建并賦值。

其實,JSON就是JavaScript對象最好的序列化形式,它比XML更簡潔也更省空間。對象可以作為一個JSON形式的字符串,在網(wǎng)絡(luò)間自由傳遞和交換信息。而當(dāng)需要將這個JSON字符串變成一個JavaScript對象時,只需要使用eval函數(shù)這個強大的數(shù)碼轉(zhuǎn)換引擎,就立即能得到一個JavaScript內(nèi)存對象。正是由于JSON的這種簡單樸素的天生麗質(zhì),才使得她在AJAX舞臺上成為璀璨奪目的明星。

相關(guān)文章

最新評論