https://codeday.me/bug/20170602/18962.html
我試圖做同樣的事情,那篇文章,唯一的問題是,我不知道什么是鍵和值是前期。所以我需要能夠動態添加鍵和值對,我不知道該怎么做。
有誰知道如何創建該對象和動態添加鍵值對?
我試過了:
```
var vars = [{key:"key", value:"value"}];
vars[0].key = "newkey";
vars[0].value = "newvalue";
```
但這不工作。
```
var dict = []; // create an empty array
dict.push({
key: "keyName",
value: "the value"
});
// repeat this last part as needed to add more key/value pairs
```
基本上,你正在創建一個具有2個屬性(稱為key和value)的對象常量,并將它(使用push())插入數組。
編輯:所以差不多5年后,這個答案是downvote,因為它不是創建一個“正常”的JS對象字面量(aka地圖,aka哈希,aka字典)。
然而,它創建了OP要求的結構(并且在另一個問題鏈接到的示例),它是一個對象字面量數組,每個都有鍵和值屬性。不要問我為什么需要這種結構,但它是被要求的。
但是,如果你想在一個純JS對象 – 而不是結構OP要求 – 見tcll’s answer,雖然如果你只有簡單的鍵是有效的JS名稱的括號符號是一個有點麻煩。你可以這樣做:
```
var dict = {
key1: "value1",
key2: "value2"
// etc.
};
```
或者在創建對象后使用常規點表示法設置屬性:
```
var dict = {};
dict.key1 = "value1";
dict.key2 = "value2";
// etc.
```
你需要括號符號,如果你有鍵在其中有空格,特殊字符或類似的東西。例如:
```
var dict = {};
// this obviously won't work
dict.some invalid key (for multiple reasons) = "value1";
// but this will
dict["some invalid key (for multiple reasons)"] = "value1";
如果您的鍵是動態的,您還需要括號符號:
dict[firstName + " " + lastName] = "some value";
```
請注意,鍵(屬性名稱)始終是字符串,非字符串值將在用作鍵時強制轉換為字符串。例如。 Date對象轉換為其字符串表示形式:
```
dict[new Date] = "today's value";
// => {
// "Sat Nov 04 2016 16:15:31 GMT-0700 (PDT)": "today's value"
// }
```
- 簡介
- 兩種結構對象和數組
- JSON對象和字符串轉換
- JSON字符串轉換為JSON對象
- JSON對象轉換為JSON字符串
- 實例1-通用的JSON數組去重
- 實例2-根據某個字段實現對json數組的排序
- 實例3-JSON根據某一個字段進行篩選
- 實例4-去重后取出某一字段形成新結構
- 實例5-出發車站從json動態獲取
- 數據操作
- 遍歷
- 復制一個新JSON數組
- 實例6-點擊checkbox動態篩選json
- 如何使用JS篩選JSON數據
- filter
- filter后數據變化
- json判斷為空顯示與否
- JavaScript 陣列處理方法[filter(), find(), forEach(), map(), every(), some(), reduce()]
- json_decode
- php 解決json_encode中文UNICODE轉碼問題
- js中判斷返回的json字符串中是否有某個字段
- 如何獲取json對象中的特定值
- 如何刪除json中的某個變量key
- json將某一字段轉化為字符串用逗號連接
- json的某一個鍵名作為鍵值
- 鍵名和鍵值
- 根據鍵名得到對應的鍵值三種方法
- 鍵名和鍵值分開作為一個新的json對象
- 鍵名作為變量
- field_as_key其中一個鍵名作為鍵值
- 遍歷JSON、獲取JSON長度的方法
- js的for循環不如$.each好用
- 常用函數
- 插件
- jsonsql
- js判斷object里面是否包含某一字段
- 檢測一個字符是否在數組中
- 判斷json數據是否為空
- 兩個JSON合并
- js如何將兩個對象合并成一個對象
- 數組與對象的追加方式
- js數組去重(包括對象數組去重)
- JSON 元素的添加刪除
- JavaScript對Json的增刪改屬性
- js刪除json中指定的元素
- json中如何刪除指定元素
- 如何在Javascript中動態創建字典和添加鍵值對
- JS 獲取對象key
- js如何通過相同鍵值合并兩個json數組
- 有相同鍵值的json合并為一個數組
- js判斷一個數組是否包含另一個數組
- js將一個數組插入另一個數組
- js移除Array中指定元素
- 數組的操作
- 合并數組
- 去重數組