最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue對象的深度克隆方式

 更新時間:2022年09月08日 09:07:40   作者:久違°  
這篇文章主要介紹了vue對象的深度克隆方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

vue對象的深度克隆

方法1

通過js序列化,將js轉換成字符串,然后再將字符串轉換成js對象

var olbObj = {a:1};
var str = JSON.stringify(obj); //序列化對象
var newobj = JSON.parse(str); //還原
//相當于
var newObj = JSON.parse(JSON.stringify(olbObj ))

方法2

ES6語法對象展開運算符進行對象的展開賦值

var a = {a:0}
var b = {...a}

方法3

進行對象的遍歷復制,對 對象的每一條屬性進行復制,這樣就能進行對象的深度克隆

function newobj(obj) {
? var str, newobj = obj.constructor === Array ? [] : {};
? //constructor 屬性返回對創(chuàng)建此對象的數組函數的引用。創(chuàng)建相同類型的空數據
? if (typeof obj !== 'object') {
? ? return;
? } else {
? ? for (var i in obj) {
? ? ? if (typeof obj[i] === 'object'){//判斷對象的這條屬性是否為對象
? ? ? ? newobj[i] = newObj(obj[i]);//若是對象進行嵌套調用
? ? ? }else{
? ? ? ? newobj[i] = obj[i];
? ? ? }
? ? }
? }
? return newobj;//返回深度克隆后的對象
}

vue克隆對象時遇到的問題

我們知道 當我們需要深克隆一個對象 或者數組時 改變這個得到的數據,原數據保持不變 比較簡單的用到的函數基本都是

let b = JSON.parse(JSON.stringify(a))

但是假如我們克隆一個vue響應式對象時 發(fā)現(xiàn)用這個方法沒啥用

所以需要一個工具函數老深克隆

//深克隆?
export const deepClone = (source) => {
? var sourceCopy = source instanceof Array ? [] : {}
? for (var item in source) {
? ? sourceCopy[item] = typeof source[item] === 'object' ? deepClone(source[item]) : source[item]
? }
? return sourceCopy
}
let b = deepClone (a)

這樣就得到響應式的啦

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。 

相關文章

  • vue-cli腳手架-bulid下的配置文件

    vue-cli腳手架-bulid下的配置文件

    這篇文章主要介紹了vue-cli腳手架-bulid下的配置文件,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • Vue?調用攝像頭掃描條碼功能實現(xiàn)代碼

    Vue?調用攝像頭掃描條碼功能實現(xiàn)代碼

    本文介紹了如何使用Vue.js和jsQR庫來實現(xiàn)調用攝像頭并掃描條碼的功能,通過安裝依賴、獲取攝像頭視頻流、解析條碼等步驟,實現(xiàn)了從開始掃描到停止掃描的完整流程,同時,還強調了瀏覽器兼容性、HTTPS環(huán)境、權限問題和性能優(yōu)化的重要性,感興趣的朋友一起看看吧
    2025-03-03
  • vue.js響應式原理解析與實現(xiàn)

    vue.js響應式原理解析與實現(xiàn)

    這篇文章主要為大家詳細介紹了vue.js響應式原理解析與實現(xiàn),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • Vue實現(xiàn)省市區(qū)三級聯(lián)動el-select組件的示例代碼

    Vue實現(xiàn)省市區(qū)三級聯(lián)動el-select組件的示例代碼

    這篇文章主要為大家詳細介紹了Vue實現(xiàn)省市區(qū)三級聯(lián)動el-select組件的方法,文中的示例代碼講解詳細,具有一定的借鑒價值,需要的的可以參考一下
    2023-02-02
  • vue elementUI實現(xiàn)自定義正則規(guī)則驗證

    vue elementUI實現(xiàn)自定義正則規(guī)則驗證

    本文主要介紹了vue elementUI實現(xiàn)自定義正則規(guī)則驗證,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • el-form中的rules未生效的解決方法

    el-form中的rules未生效的解決方法

    本文主要介紹了el-form中的rules未生效的解決方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-02-02
  • Vue仿百度搜索功能

    Vue仿百度搜索功能

    這篇文章主要為大家詳細介紹了Vue仿百度搜索功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-12-12
  • vue循環(huán)數組改變點擊文字的顏色

    vue循環(huán)數組改變點擊文字的顏色

    這篇文章主要為大家詳細介紹了vue循環(huán)數組改變點擊文字的顏色,非常實用的切換效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • Vue 換膚的示例實踐

    Vue 換膚的示例實踐

    本篇文章主要介紹了Vue 換膚的示例實踐,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01
  • Vue中裝飾器的使用示例詳解

    Vue中裝飾器的使用示例詳解

    Vue?Property?Decorator提供了一些裝飾器,包括@Prop、@Watch、@Emit、@Inject、@Provide、@Model等等,本文主要來和大家講講它們的使用方法,需要的可以參考一下
    2023-07-07

最新評論

西昌市| 四会市| 吉木乃县| 神木县| 乌恰县| 灵台县| 确山县| 南城县| 万全县| 新巴尔虎左旗| 泗洪县| 新巴尔虎右旗| 临安市| 花垣县| 镇江市| 宜章县| 科技| 栖霞市| 花莲市| 农安县| 海南省| 呼图壁县| 克什克腾旗| 星子县| 随州市| 仁寿县| 宜君县| 赤城县| 孝义市| 二连浩特市| 霍邱县| 蒙阴县| 郑州市| 库车县| 二连浩特市| 常山县| 安远县| 宣武区| 中阳县| 舞阳县| 大庆市|