五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

vue添加對(duì)象數(shù)據(jù)到數(shù)組,前面添加的所有數(shù)據(jù)都會(huì)變成最后一個(gè)添加的對(duì)象

2023-06-07 14:53 作者:雨中豆芽  | 我要投稿

這是因?yàn)閷?duì)象數(shù)據(jù)為引用數(shù)據(jù)類型,簡單的push方法添加對(duì)象到數(shù)組的時(shí)候,只是把對(duì)象的地址指針重復(fù)的給到數(shù)組的每一項(xiàng),也就是數(shù)組的每一項(xiàng)數(shù)據(jù)都指向了同一個(gè)對(duì)象,對(duì)象數(shù)據(jù)一變,數(shù)組所有數(shù)據(jù)都跟著變。

解決辦法就是要push不同地址的對(duì)象到數(shù)組里面去,讓數(shù)組的每一項(xiàng)數(shù)據(jù)都指向不同地址的對(duì)象,方法是push之前深拷貝要添加的對(duì)象。

function deepClone(data) {

? ? let obj = null

? ? let type = getObjType(data)

? ? console.log(type);

? ? if (type == 'array') {

? ? ? ? obj = []

? ? } else if (type == 'object') {

? ? ? ? obj = {}

? ? } else {

? ? ? ? return data

? ? }

? ? if (type == 'array') {

? ? ? ? for (let index = 0; index < data.length; index++) {

? ? ? ? ? ? obj.push = deepClone(data[index]);

? ? ? ? }

? ? ? ? return obj

? ? } else if (type == 'object') {

? ? ? ? for (const key in data) {

? ? ? ? ? ? obj[key] = deepClone(data[key]);

? ? ? ? }

? ? ? ? return obj

? ? }

}

function getObjType(data) {

? ? ? ? let type = typeof(data)

? ? ? ? if (type == 'object') {

? ? ? ? ? ? let is_arr = data instanceof Array

? ? ? ? ? ? if (is_arr) {

? ? ? ? ? ? ? ? return 'array'

? ? ? ? ? ? }else {

? ? ? ? ? ? ? ? return 'object'

? ? ? ? ? ? }

? ? ? ? } else {

? ? ? ? ? ? if (type == 'string') {

? ? ? ? ? ? ? ? return 'string'

? ? ? ? ? ? } else if (type = 'number') {

? ? ? ? ? ? ? ? return 'number'

? ? ? ? ? ? } else if (type = 'boolean') {

? ? ? ? ? ? ? ? return 'boolean'

? ? ? ? ? ? }else if (type = 'undefined') {

? ? ? ? ? ? ? ? return 'undefined'

? ? ? ? ? ? }

? ? ? ? }

}


vue添加對(duì)象數(shù)據(jù)到數(shù)組,前面添加的所有數(shù)據(jù)都會(huì)變成最后一個(gè)添加的對(duì)象的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
宁海县| 普兰店市| 伊通| 北辰区| 台东市| 那曲县| 登封市| 皮山县| 广元市| 扎鲁特旗| 彩票| 安仁县| 淳安县| 南川市| 南京市| 措勤县| 辛集市| 铜梁县| 鸡东县| 云龙县| 淅川县| 宣武区| 定安县| 保德县| 开平市| 长白| 威宁| 历史| 准格尔旗| 密山市| 盖州市| 廉江市| 龙山县| 同心县| 建平县| 泗水县| 文昌市| 会同县| 天柱县| 葵青区| 肃宁县|