簡體   English   中英

從同一數組中的其他索引值插入索引值

[英]Insert index value from other index value in same array

例如。

let arr = [];
arr[content] = [];
arr[media]=["abc"];
arr[hey]=["hello"];

請從 arr[media] 中添加 arr[content] 中的值。 我只是嘗試了 a[content]=a[media] 但它不起作用。

這里,content,media,hey 是數組的索引,如 arr[1],arr[2],arr[3]。 不要與 object 混合使用。

您的問題不清楚contentmediahey是否是具有 integer 值的變量,或者它們是否是數組的鍵。 因此,我將為您提供兩種情況的答案。

案例 1:變量

如果是這種情況,那么您的代碼應如下所示:

let content = 1;
let media = 2;
let hey = 3;

let arr = [];

arr[content] = [];
arr[media]=["abc"];
arr[hey]=["hello"];

在這種情況下,將content的值設置為media的值所需要做的就是arr[content] = arr[media] 現在content的值將是一個帶有字符串abc的數組。

 let content = 1; let media = 2; let hey = 3; let arr = []; arr[content] = []; arr[media] = ["abc"]; arr[hey] = ["hello"]; arr[content] = arr[media]; console.log(arr[content]);

案例 2:鑰匙

在 JavaScript 中,數組的索引只能是正數 integer。 您的代碼沒有拋出錯誤的原因是因為 arrays 是對象的擴展。

所以下面的代碼

let arr = [];
arr["content"] = [];
arr["media"]=["abc"];
arr["hey"]=["hello"];

等同於

let arr = {};
arr["content"] = [];
arr["media"]=["abc"];
arr["hey"]=["hello"];

在這種情況下,將content的值設置為media的值所需要做的就是arr["content"] = arr["media"] 現在content的值將是一個帶有字符串abc的數組。

 let arr = {}; arr["content"] = []; arr["media"] = ["abc"]; arr["hey"] = ["hello"]; arr["content"] = arr["media"]; console.log(arr["content"]);

Javascript 中的 Arrays 是帶有數字索引的值列表。 你在這里表達的實際上是對象,在這種情況下是屬性。 我會像這樣重寫這段代碼:

 /*let arr = []; arr[content] = []; arr[media]=["abc"]; arr[hey]=["hello"]; */ let obj = {}; obj.content = []; obj.media=["abc"]; obj.hey=["hello"]; // *ADDING THE CONTENT OF obj.media TO obj.content obj.media.forEach(element => obj.content.push(element)); // AND HERE'S A TEST alert(obj.content);

@Raghav Sehgal,JavaScript 不支持關聯 arrays。 當您希望元素名稱為字符串(文本)時,您應該使用對象。

 let arr = []; arr['content'] = []; arr['media'] = ["abc"]; arr['hey'] = ["hello"]; arr['content'] = arr['media'] console.log(arr['content'])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM