最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(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ù)類(lèi)型,簡(jiǎn)單的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)遵守國(guó)家法律
塘沽区| 连南| 喀喇| 邓州市| 城固县| 金堂县| 德格县| 肥东县| 永城市| 临沂市| 泰顺县| 肃北| 甘孜县| 平舆县| 徐州市| 元江| 望谟县| 江源县| 兰州市| 德庆县| 呼伦贝尔市| 读书| 阳春市| 来安县| 临夏市| 方城县| 靖西县| 金坛市| 莒南县| 阿鲁科尔沁旗| 图木舒克市| 潼关县| 扎兰屯市| 腾冲县| 乾安县| 云浮市| 平果县| 买车| 新和县| 阜阳市| 阳山县|