2017-08-29 65 views
0

我想在打字稿中创建JSON。 JSON数组是这样的: JsonArray = [{k1:v1},{k2:v2},{k3:v3}...]在打字稿中创建没有重复值的json

该功能项添加到JSON数组

myfunc(keyName, valueName){ 
    this.JsonArray.push({ 
    [keyName] : valueName;   
    }) 
} 

而这下面的函数调用上面的函数:

createJsonArray(keyName, valueName){ 
    if(//keyName already exists in this.JsonArray){ 
    //update the value for the keyName this.JsonArray 
    } 
    else 
     this.myfunc(keyName, valueName); 
} 

虽然我已经尝试了一些堆栈溢出提示,但我陷入这些//段。

如何写这些部分来更新json数组?

回答

1

找到该项目并检查它是否有效。

class A { 
    private JsonArray = []; 

    myfunc(keyName, valueName){ 
     this.JsonArray.push({ 
      [keyName] : valueName   
     }) 
    } 

    createJsonArray(keyName, valueName) { 
     let item = this.JsonArray.find((item) => item[keyName]); 

     if (item) { 
      item[keyName] = valueName; 
     } 
     else { 
      this.myfunc(keyName, valueName); 
     } 
    } 
} 
+0

这工作完美。 – SamCodes