解析javascript 數(shù)組以及json元素的添加刪除
javasscript刪除數(shù)組的3種方法
1,用shift()方法
shift:刪除原數(shù)組第一項(xiàng),并返回刪除元素的值;如果數(shù)組為空則返回undefined
var chaomao=[1,2,3,4,5]
var chaomao.shift()//得到1
alert(chaomao)//[2,3,4,5]
2,用pop()方法
pop:刪除原數(shù)組最后一項(xiàng),并返回刪除元素的值;如果數(shù)組為空則返回undefined
var chaomao=[1,2,3,4,5]
var chaomao.pop()//得到5
alert(chaomao)//[1,2,3,4]
前面的方法只能操作數(shù)組開頭和結(jié)尾,無法操作中間項(xiàng),如果要操作中間的項(xiàng),使用splice方法
3,用splice方法
這個(gè)方法很強(qiáng)大,可以對(duì)數(shù)組任意項(xiàng)進(jìn)行增加,刪除,替換操作
修改操作:
var chaomao=[1,2,3,4,5]
chaomao.splice(2,1,8,9)
alert(chaomao)//1,2,8,9,4,5
第一個(gè)參數(shù)是準(zhǔn)備操作的數(shù)組位置,第二個(gè)參數(shù)是操作位置后面的數(shù)組項(xiàng)數(shù),第三個(gè)以后的就是,被替換后的內(nèi)容
例子就是表示:從chaomao這個(gè)數(shù)組位置2開始(也就是值為3的那一項(xiàng),數(shù)組下標(biāo)從0開始的),位置2后的一項(xiàng),替換成成8,9
如果把第二個(gè)參數(shù)改為2,也就是chaomao.splice(2,2,8,9),也就是說位置2后面的兩項(xiàng)換成8,9,打印出來的結(jié)果就是1,2,8,9,5,3和4這2兩項(xiàng)被換掉了
這里需要說明的是,被替換的項(xiàng)數(shù)不一定要和替換的項(xiàng)數(shù)相等,1項(xiàng)可以被換成3項(xiàng),5項(xiàng)也可以被換成2項(xiàng),基于這個(gè)原理,我們就用這個(gè)方法來對(duì)數(shù)組進(jìn)行添加和刪除操作
刪除操作:
var chaomao=[1,2,3,4,5]
chaomao.splice(2,1)
alert(chaomao)//1,2,4,5
上面例子中,把chaomao中的位置2后的1項(xiàng)替換成空的,因?yàn)楹竺鏇]有內(nèi)容,結(jié)果可以看到,把3這項(xiàng)刪除了
添加操作:
var chaomao=[1,2,3,4,5]
chaomao.splice(2,0,8,9)
alert(chaomao)//1,2,8,9,3,4,5
上面例子中,把chaomao中位置2后的0項(xiàng)換成8,9,也就等于添加了兩項(xiàng)
其實(shí),刪除和添加操作都只是splice修改方法的兩種衍生罷了
javasscript刪除對(duì)象的方法
js中刪除對(duì)象元素用delete操作符
我們來看看一個(gè)例子
var p ={
"name": “chaomao”,
"age":45,
"sex":"male"
};
delete p.name
for(var i in p){
console.log(i);//輸出age,sex,name項(xiàng)已經(jīng)被刪除了
}
添加json元素的方法
var json = {}; // 如果json已經(jīng)定義就跳過
json[text] = value;
json.text2 = value2; // 此時(shí)text2必須符合變量名標(biāo)準(zhǔn),否則得使用數(shù)組方式賦值
相關(guān)文章
用Fundebug插件記錄網(wǎng)絡(luò)請(qǐng)求異常的方法
這篇文章主要介紹了用Fundebug插件記錄網(wǎng)絡(luò)請(qǐng)求異常的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-02-02JavaScript實(shí)現(xiàn)的開關(guān)燈泡點(diǎn)擊切換特效示例
這篇文章主要介紹了JavaScript實(shí)現(xiàn)的開關(guān)燈泡點(diǎn)擊切換特效,涉及javascript事件響應(yīng)及頁面元素屬性動(dòng)態(tài)操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2019-07-07仿谷歌主頁js動(dòng)畫效果實(shí)現(xiàn)代碼
昨天看到谷歌的主頁上出現(xiàn)了幾個(gè)動(dòng)畫,發(fā)現(xiàn)不是flash做的,而是用js+圖片實(shí)現(xiàn)的!今天把拷貝到的圖片,用js實(shí)現(xiàn)了動(dòng)畫效果!2013-07-07帶你領(lǐng)略O(shè)bject.assign()方法的操作方式
這篇文章主要介紹了帶你領(lǐng)略O(shè)bject.assign()方法的操作方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08A標(biāo)簽觸發(fā)onclick事件而不跳轉(zhuǎn)的多種解決方法
一個(gè)標(biāo)簽僅僅是要觸發(fā)onclick行為,遇到了A標(biāo)簽觸發(fā)onclick事件時(shí)不執(zhí)行跳轉(zhuǎn),下面與大家分享下四種解決方法,感興趣的朋友可以參考下哈2013-06-06利用JS輕松實(shí)現(xiàn)獲取表單數(shù)據(jù)
本文主要介紹了利用JS輕松實(shí)現(xiàn)獲取表單數(shù)據(jù)。方法有別于原始的做法,大家可以試著找原始做法與本文所說方法之間的區(qū)別。有興趣的朋友可以看下,希望對(duì)大家有所幫助2016-12-12js動(dòng)態(tài)設(shè)置鼠標(biāo)事件示例代碼
動(dòng)態(tài)設(shè)置鼠標(biāo)事件的方法有很多,接下來為大家介紹下js中是如何做到的,感興趣的朋友不要錯(cuò)過2013-10-10javascript判斷iphone/android手機(jī)橫豎屏模式的函數(shù)
iphone能很好的使用onorientationchange事件,但是android的onresize事件即使不旋轉(zhuǎn)也會(huì)觸發(fā)多次2011-12-12固定背景實(shí)現(xiàn)的背景滾動(dòng)特效示例分享
固定背景滾動(dòng)特效,使用background-attachment: fixed和導(dǎo)航菜單,頁面會(huì)非常平滑的滾動(dòng),感興趣的朋友可以參考下哈希望對(duì)你有所幫助2013-05-05JS獲取瀏覽器版本及名稱實(shí)現(xiàn)函數(shù)
獲取瀏覽器名稱及版本信息,如果當(dāng)前瀏覽器是IE,彈出瀏覽器版本,否則彈出當(dāng)前瀏覽器名稱和版本,詳細(xì)實(shí)現(xiàn)代碼請(qǐng)參考本文2013-04-04