資源描述:
《javascript刪除json元素》由會員上傳分享,免費在線閱讀,更多相關內容在應用文檔-天天文庫。
1、javascript刪除JSON元素JSON數(shù)據(jù)是由對象和數(shù)組數(shù)據(jù)結構組成,我們只要學會javascript中對對象和數(shù)組的刪除方法即可對JSON項進行刪除操作javasscript刪除數(shù)組的3種方法1,用shift()方法shift:刪除原數(shù)組第一項,并返回刪除元素的值;如果數(shù)組為空則返回undefined·varchaomao=[1,2,3,4,5]·varchaomao.shift()//得到1·alert(chaomao)//[2,3,4,5]2,用pop()方法pop:刪除原數(shù)組最后一項,
2、并返回刪除元素的值;如果數(shù)組為空則返回undefined·varchaomao=[1,2,3,4,5]·varchaomao.pop()//得到5·alert(chaomao)//[1,2,3,4]前面的方法只能操作數(shù)組開頭和結尾,無法操作中間項,如果要操作中間的項,使用splice方法3,用splice方法這個方法很強大,可以對數(shù)組任意項進行增加,刪除,替換操作修改操作:·varchaomao=[1,2,3,4,5]·chaomao.splice(2,1,8,9)·alert(chaomao)//
3、1,2,8,9,4,5第一個參數(shù)是準備操作的數(shù)組位置,第二個參數(shù)是操作位置后面的數(shù)組項數(shù),第三個以后的就是,被替換后的內容例子就是表示:從chaomao這個數(shù)組位置2開始(也就是值為3的那一項,數(shù)組下標從0開始的),位置2后的一項,替換成成8,9如果把第二個參數(shù)改為2,也就是chaomao.splice(2,2,8,9),也就是說位置2后面的兩項換成8,9,打印出來的結果就是1,2,8,9,5,3和4這2兩項被換掉了這里需要說明的是,被替換的項數(shù)不一定要和替換的項數(shù)相等,1項可以被換成3項,5項也可
4、以被換成2項,基于這個原理,我們就用這個方法來對數(shù)組進行添加和刪除操作?刪除操作:·varchaomao=[1,2,3,4,5]·chaomao.splice(2,1)·alert(chaomao)//1,2,4,5上面例子中,把chaomao中的位置2后的1項替換成空的,因為后面沒有內容,結果可以看到,把3這項刪除了?添加操作:·varchaomao=[1,2,3,4,5]·chaomao.splice(2,0,8,9)·alert(chaomao)//1,2,8,9,3,4,5上面例子中,把ch
5、aomao中位置2后的0項換成8,9,也就等于添加了兩項其實,刪除和添加操作都只是splice修改方法的兩種衍生罷了其他不靠譜的數(shù)組刪除方法之所以說不靠譜,是因為它沒有真正刪除數(shù)組項,而是是把它設置為空了,項本身的位置還在,數(shù)組項數(shù)沒變不靠譜的數(shù)組刪除方法1:·varchaomao=[1,2,3,4,5];·chaomao[1]=null;·alert(chaomao.length);//5打印出的項數(shù)還是5,并沒有刪除它,只是把chaomao[1]這一項值設為null,chaomao[1]=und
6、efined,這中方法也是一樣,并沒有刪除數(shù)組項?不靠譜的數(shù)組刪除方法2:·varchaomao=[1,2,3,4,5];·deletechaomao[1];·alert(chaomao.length);//5和方法1的結果一樣,并沒有真正刪除它,而只是把這一項設為undefined?javascript刪除對象的方法js中刪除對象元素用delete操作符我們來看看一個例子·varp={·"name":“chaomao”,·"age":45,·"sex":"male"·};·deletep.name
7、·for(variinp){·console.log(i);//輸出age,sex,name項已經(jīng)被刪除了·}javascript刪除JSON元素前面我們已經(jīng)會了JS刪除對象和數(shù)組的方法我們下面進對一個具體的JSON數(shù)據(jù)進行操作·varcomputer={//這個JSON數(shù)據(jù)由數(shù)組和對象結構組成·"cpu":["intel","AMD"],·"harddisk":["WesternDigital","Seagate"],·"motherboard":["ASUS","MSI"]·};如果我們要刪除C
8、PU里面里intel這一個元素,因為這是數(shù)組里面的一項,所以我們用數(shù)組方法·computer.cpu.splice(0,1)·console.log(computer.cpu)//輸出AMD,intel被刪除了我們如果想刪除harddisk這一項,因為它是對象的一項,所以我們要用對象的刪除方法進行操作·deletecomputer.harddisk·for(variincomputer){·console.log(i)//輸出CPU,motherboard,hardd