欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript中對JSON對象的基本操作示例

 更新時(shí)間:2016年05月21日 10:31:05   投稿:goldensun  
JSON格式本就發(fā)自于JavaScript中的對象和數(shù)組,所以js操作起來自然也是最為簡單原始,接下來我們就來看一些常用的JavaScript中對JSON對象的基本操作示例

JSON對象

1、對象的屬性:
對象的屬性是有鍵值對組成的,其中key為一個(gè)字符串,value可以為任何的Javascript對象。

//使用[]設(shè)置和獲取對象的屬性
var obj = new Object();
obj["www.dbjr.com.cn"] = "http://www.dbjr.com.cn";
alert(obj["www.dbjr.com.cn"]);

2、變量既是屬性:
Javascript引擎在初始化時(shí)會構(gòu)建一個(gè)全局對象,所有的變量都是這個(gè)全局對象的屬性。為了引用這個(gè)全局對象,可以再頂級作用域中這樣獲?。?/p>

var global = this;

在Javascript中,任何獨(dú)立的函數(shù)或者變量都屬于這個(gè)對象的屬性,即:

function test(){}

相當(dāng)于:

window.test = function(){}

3、使用對象:
聲明對象的三種方式:

① 通過new操作符創(chuàng)建一個(gè)Object對象,然后動態(tài)地添加屬性,從無到有構(gòu)造一個(gè)對象
② 定義對象的類圓形,然后使用new操作符來批量構(gòu)造新的對象

//創(chuàng)建一個(gè)對象
function User(username, password){
  this.username = username;
  this.password = password;
  this.getUsername = function(){
    return this.username;
  }
  this.getPassword = function(){
    return this.password;
  }
}
var arthinking = new User("Jason", "123");
alert(arthinking.getUsername());
alert(arthinking.getPassword());

③ 使用JSON構(gòu)造對象
JSON即Javascript對象表示方法(Javascript Object Notation),也就是通過字面量來表示一個(gè)對象:

//JSON形式創(chuàng)建一個(gè)對象
var arthinking = {
  username : "Jason",
  password : "123",
  favorite : {
    sports : "football",
    music : "Guitar"
  }
}
alert(arthinking.username);
alert(arthinking.favorite.sports);

解析由服務(wù)器返回的JSON格式數(shù)據(jù)
單個(gè)JSON對象:

[{a:'1',b'2'},{a:'3',b'4'}]

多個(gè)JSON對象:

{
"usergroups":[{a:'001',b:'arthinking'},a:'002',b:'Jason'}],
"groups":[{c:'001',d:'IT宅'}]
}

可以根據(jù)這種格式先從后臺封裝好需要傳遞的數(shù)據(jù),前臺獲取到后可以這樣解析獲取數(shù)據(jù):

//假設(shè)response.responseText為返回的JSON字符串
//可以使用eval()函數(shù)把JSON字符串轉(zhuǎn)換成Javascript語句
//再通過”.”導(dǎo)航獲取具體屬性,length屬性為對象的長度
var obj = eval( "(" + response.responseText + ")" );
for(var i = 0; i<obj.usergroups.length; i++){
  var groupid = obj.usergroups[i].a;
  var usergroup=obj.groups;
  for(var j=0; j<usergroup.length; j++){
    if(usergroup[j].c == groupid){
      alert(groupid);
 }
  }
}

相關(guān)文章

  • JavaScript實(shí)現(xiàn)快速排序(自已編寫)

    JavaScript實(shí)現(xiàn)快速排序(自已編寫)

    用到j(luò)avascript的排序一組數(shù)字,js沒有直接的數(shù)字比較的函數(shù)可以調(diào)用,所以自己寫了一個(gè)快速排序,需要的朋友可以了解下
    2012-12-12
  • Ajax狀態(tài)碼的生成順序以及含義介紹

    Ajax狀態(tài)碼的生成順序以及含義介紹

    這篇文章介紹了Ajax狀態(tài)碼的生成順序以及含義,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-04-04
  • js setTimeout 常見問題小結(jié)

    js setTimeout 常見問題小結(jié)

    主要包括this指向問題、向setTimeout傳入?yún)?shù)等相關(guān)問題,下面與大家分享下以上問題的解決方法,感興趣的朋友可以參考下
    2013-08-08
  • 超詳細(xì)的JavaScript基本語法規(guī)則

    超詳細(xì)的JavaScript基本語法規(guī)則

    這篇文章主要介紹了JavaScript基本語法規(guī)則,保姆級的詳細(xì)教程,萬字長文詳細(xì)的列出了JavaScript的各種語法,建議收藏系列,希望可以有所幫助
    2021-08-08
  • javaScript面向?qū)ο罄^承方法經(jīng)典實(shí)現(xiàn)

    javaScript面向?qū)ο罄^承方法經(jīng)典實(shí)現(xiàn)

    很多人都說JavaScript不能算是面向?qū)ο蟮淖兂烧Z言。但是JavaScript的類型非常松散,也沒有編譯器,但是我們可以模仿著其他語言實(shí)現(xiàn)面向?qū)ο蟮姆绞絹韺?shí)現(xiàn)JavaScript的面向編程
    2013-08-08
  • IE6瀏覽器下resize事件被執(zhí)行了多次解決方法

    IE6瀏覽器下resize事件被執(zhí)行了多次解決方法

    在IE瀏覽器下,一次resize事件被執(zhí)行了多次,這是IE6和IE7的一個(gè)比較廣為認(rèn)知的問題,這個(gè)問題在這兩個(gè)版本的瀏覽器中表現(xiàn)有所不同,通常IE6下會比IE7下更為糟糕,接下來將介紹解決方法,需要的朋友可以參考下
    2012-12-12
  • 對js關(guān)鍵字命名的疑問介紹

    對js關(guān)鍵字命名的疑問介紹

    對js關(guān)鍵字命名我感覺有點(diǎn)亂,于是整理了一下,需要的朋友也可以參考下
    2014-04-04
  • JavaScript中的slice()方法使用詳解

    JavaScript中的slice()方法使用詳解

    這篇文章主要介紹了JavaScript中的slice()方法使用詳解,是JS入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下
    2015-06-06
  • Javascript之文件操作

    Javascript之文件操作

    Javascript之文件操作...
    2007-03-03
  • 深入分析Javascript事件代理

    深入分析Javascript事件代理

    JavaScript事件是所有網(wǎng)頁互動性的根基。在傳統(tǒng)的事件處理中,事件處理器將有可能導(dǎo)致內(nèi)存泄露或者是性能下降,JavaScript事件代理則是一種簡單的技巧,通過它你可以把事件處理器添加到一個(gè)父級元素上,這樣就避免了把事件處理器添加到多個(gè)子級元素上。
    2016-01-01

最新評論