ホームページ ウェブフロントエンド jsチュートリアル Json object_json によるディープコピーメソッドの改良版

Json object_json によるディープコピーメソッドの改良版

May 16, 2016 pm 05:48 PM
jsonオブジェクト

以前、Json オブジェクトのディープ コピー メソッドに関するブログ投稿を見ました。つまり、

コードをコピー コードは次のとおりです。

var obj = {
sayName: function() {
alert(this.name);
},
name:'京水源'
}; var cloneObj=JSON.parse (JSON.stringify(obj));cloneObj.sayName();

しかし、この方法では、属性値を関数の属性としてコピーすることはできません。メソッドが改善されました。具体的なコードは次のとおりです:
コードをコピー コードは次のとおりです:

var obj = {
sayName: function() {
alert(this.name);
},
name:'Still Water Abyss'
}; clone(){
var str,newObj;
str= JSON .stringify(obj, function(key, value) {
return (typeof value == 'function' ? value.toString().replace (/^function(.*)/g, "jsonFunction$1") : 値 )
});
newObj = JSON.parse(str, function (key, value) {
if (/ ^jsonFunction(.*)/.test(value)) {
var strFun = '(' value.replace(/^jsonFunction(.*)/, "function$1") ')'; eval(strFun);
戻り値;
}
var cloneObj=clone(obj); ;


まだ完全にテストされていないため、シュート レンガを歓迎します。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

JavaScriptの文字列文字を交換します JavaScriptの文字列文字を交換します Mar 11, 2025 am 12:07 AM

JavaScriptの文字列文字を交換します

カスタムGoogle検索APIセットアップチュートリアル カスタムGoogle検索APIセットアップチュートリアル Mar 04, 2025 am 01:06 AM

カスタムGoogle検索APIセットアップチュートリアル

例JSONファイルの例 例JSONファイルの例 Mar 03, 2025 am 12:35 AM

例JSONファイルの例

独自のAjax Webアプリケーションを構築します 独自のAjax Webアプリケーションを構築します Mar 09, 2025 am 12:11 AM

独自のAjax Webアプリケーションを構築します

8見事なjQueryページレイアウトプラグイン 8見事なjQueryページレイアウトプラグイン Mar 06, 2025 am 12:48 AM

8見事なjQueryページレイアウトプラグイン

' this' JavaScriptで? ' this' JavaScriptで? Mar 04, 2025 am 01:15 AM

' this' JavaScriptで?

ソースビューアーでjQueryの知識を向上させます ソースビューアーでjQueryの知識を向上させます Mar 05, 2025 am 12:54 AM

ソースビューアーでjQueryの知識を向上させます

モバイル開発用のモバイルチートシート10個 モバイル開発用のモバイルチートシート10個 Mar 05, 2025 am 12:43 AM

モバイル開発用のモバイルチートシート10個

See all articles