1

私は配列を持っていますchannel_chunk

var channel = "global/private/user/updates/user_following/publisher_id/subcriber_id";

channel_chunk = channel.split("/"),

そして私はこの配列を別の変数に割り当てます

var new_arr =  channel_chunk ;

問題は

私が変わったとき

new_arr[0]  = "test";

channel_chunk[0]またになりますtest

ですから、を割り当てるときに参照によって渡されると思います。channel_chunk値で割り当てたいと思いますnew_arr

jQuery.extend は助けになることを知っています。しかし、私はこの場合純粋なJavaScriptを使用しているので、それを使用することはできません。JavaScriptでこれを行うための組み込み関数があります。助けてください............

4

2 に答える 2

3

配列(の一部)の(浅い)コピーを取得する「公式」の方法は次の.slice()とおりです。

var new_arr = channel_chunk.slice(0);

[その中のオブジェクトまたは配列は引き続き元のコピーを参照するため、「浅い」コピーと呼ばれますが、配列自体はまったく新しいコピーです。影響を受けない文字列プリミティブを使用しているため。]

于 2012-05-28T07:17:48.713 に答える
0

新しいアレイを作成する必要があります。これを行う簡単な方法は、引数なしで単純に連結することです。

var new_arr = channel_chunk.concat();

new_arrを変更しても、channel_chunkには影響しません。

于 2012-05-28T07:16:51.897 に答える