如何从对象获取特定键? (JS)

时间:2020-05-11 15:15:55

标签: javascript json object

我有这个对象:

728394 : {
    "playersAmount" : 2,
    "players" : {
      "LRFe9w9MQ6hf1urjAAAB" : {
        "nickname" : "spieler1",
        "type" : "player1"
      },
      "nKUDWEd5p_FCBO4sAAAD" : {
        "nickname" : "spieler2",
        "type" : "player2"
      },
      "ghdaWSWUdg27sf4sAAAC" : {
        "nickname" : "spieler3",
        "type" : "spectator"
      }
    },
    "activePlayer" : "LRFe9w9MQ6hf1urjAAAB",
    "board" : [
      [0, 0, 0, 0, 0, 0],
      [0, 0, 0, 0, 0, 0],
      [0, 0, 0, 0, 0, 0],
      [0, 0, 0, 0, 0, 0],
      [0, 0, 0, 0, 0, 0],
      [0, 0, 0, 0, 0, 0],
      [0, 0, 0, 0, 0, 0]
    ]
  }

除k / v对“板”外,如何获取上述对象的所有内容?除了只添加正确的密钥以外,还有其他方法吗?

4 个答案:

答案 0 :(得分:3)

您可以创建副本,然后删除不需要的密钥:

const copy = { ...original }
delete copy.unwantedProperty

当然,如果您不关心更改属性,则可以删除原始属性。

(注意:如果您的环境不支持语法{ ...original },则可以改用Object.assign({}, original)。)

编辑:实际上,this answer更加整洁。

答案 1 :(得分:3)

SELECT S.NAME AS NAME,S.SURNAME AS SURNAME,S.FATHER_NAME ,S.FATHER_SURNAME,M.NAME AS 
MOTHER_NAME,M.SURNAME AS MOTHER_SURNAME 
FROM @T M INNER JOIN(
SELECT T2.NAME AS NAME,T2.SURNAME AS SURNAME,T1.NAME AS FATHER_NAME,T1.SURNAME AS 
FATHER_SURNAME,T2.MOTHERID
FROM @T T1
INNER JOIN @T T2 ON  T1.ID=T2.FATHERID 
WHERE T2.NAME IN ('AK','OL'))S ON M.ID=S.MOTHERID

答案 2 :(得分:1)

简单的答案将是:

const copyObject = Object.assign({}, yourObject) // to make a copy of original variable
delete copyObject['keyToRemove'] // OR delete copyObject.keyToRemove

否则,如果要从原始变量中删除:

delete yourObject['keyToRemove'] // OR delete yourObject.keyToRemove

答案 3 :(得分:0)

我认为您可以使用for ... in创建一个不包含此键的新对象

object = {
  wantedKey: 'wantedValue',
  wantedKey2: 'wantedValue2',
  wantedKey3: 'wantedValue3',
  unwantedKey: 'unwantedValue'
}
const newObject = {}
for (const key in object) {
  if (key !== 'unwantedKey') newObject[key] = object[key]
}
console.log(newObject)

有关以下内容的...的更多信息:click here