JavaScript オブジェクト 新しいページはコチラ
提供: yonewiki
(→ソースオブジェクト オブジェクト初期化子) |
(→.assign 関数) |
||
743行: | 743行: | ||
== .assign 関数 == | == .assign 関数 == | ||
− | * | + | *objSource3 = Object.assign(objSource1,objSource2); |
− | : | + | :上記のようにassign関数の引数に二つのオブジェクトを記述して、結合したものをobjSource3に格納するような動作をする関数です。objSource1と2の両方にあるプロパティ値およびメソッドの全てを保持するobjSource3が生成されます。同じプロパティ値があった場合は引数の後ろ側に書かれたオブジェクトが保持している値が優先されて上書きされます。上記の例ではobjSource2の値が保持されます。また、引数の1番目に空のオブジェクト{}を指定すると、objSource2のオブジェクトそのものがobjSource3のオブジェクトになりますので、オブジェクトをコピーするような処理になります。引数1のオブジェクト自体も2番目のオブジェクトと結合した形にアサイン(割り当て)されます。 |
+ | |||
サンプル | サンプル | ||
<syntaxhighlight lang="javascript" line start="1"> | <syntaxhighlight lang="javascript" line start="1"> | ||
+ | <HTML> | ||
+ | <HEAD> | ||
+ | <TITLE>JavaScript assign</TITLE> | ||
+ | </HEAD> | ||
+ | <BODY> | ||
+ | JavaScript assign<br /> | ||
+ | <SCRIPT Language="JavaScript"> | ||
+ | <!-- | ||
+ | var objSource1 = { | ||
+ | test1:1, | ||
+ | test2:2, | ||
+ | test3:3 | ||
+ | }; | ||
+ | var objSource2 = { | ||
+ | test1:100, | ||
+ | nValue1:1, | ||
+ | nValue2:2 | ||
+ | }; | ||
+ | var objNull = {}; | ||
+ | |||
+ | objSource4 = Object.assign({},objSource1); | ||
+ | objSource5 = Object.assign({},objSource2); | ||
+ | objSource3 = Object.assign(objSource1,objSource2); | ||
+ | document.write("■objSource1", objSource1 ,"<BR />"); | ||
+ | for(var key in objSource1){ | ||
+ | document.write("objSource1 key = ", key , ", objSource1[", key,"] = ",objSource1[key],"<BR />"); | ||
+ | } | ||
+ | document.write("■objSource2", objSource2 ,"<BR />"); | ||
+ | for(var key0 in objSource2){ | ||
+ | document.write("objSource2 key = ", key0 , ", objSource2[", key0,"] = ",objSource2[key0],"<BR />"); | ||
+ | } | ||
+ | document.write("■objSource3", objSource3 ,"<BR />"); | ||
+ | for(var key1 in objSource3){ | ||
+ | document.write("objSource3 key = ", key1 , ", objSource3[", key1,"] = ",objSource3[key1],"<BR />"); | ||
+ | } | ||
+ | document.write("■objSource4", objSource5 ,"<BR />"); | ||
+ | for(var key2 in objSource4){ | ||
+ | document.write("objSource4 key = ", key2 , ", objSource4[", key2,"] = ",objSource4[key2],"<BR />"); | ||
+ | } | ||
+ | document.write("■objSource5", objSource5 ,"<BR />"); | ||
+ | for(var key3 in objSource5){ | ||
+ | document.write("objSource5 key = ", key3 , ", objSource5[", key3,"] = ",objSource5[key3],"<BR />"); | ||
+ | } | ||
+ | --> | ||
+ | </SCRIPT> | ||
+ | </BODY> | ||
+ | </HTML> | ||
</syntaxhighlight> | </syntaxhighlight> | ||
[[Media:JavaScript Object assign.html|実行結果サンプル]] | [[Media:JavaScript Object assign.html|実行結果サンプル]] |