【问题标题】:Attempting to retrieve only the values, not the keys [duplicate]试图只检索值,而不是键[重复]
【发布时间】:2020-08-23 04:49:42
【问题描述】:

我正在处理下面的代码。我试图只检索值,而不是键。这不是为我提供值而是键。你能帮我让它正常工作吗? 不幸的是,我无法使用 object.values() 函数,因此我现在不知所措。抱歉,我发布原件时没有说明这一点。

function values(obj) {
    let arr = [];
    for (let value in obj) {
      arr.push(value);
    }
    return arr;
  }
let nicknames = {a:`Sunny`, b:`Weirdo`, c:`Chicken`,d:`Tokyo`}
let nicknameValues = values(nicknames)
console.log(nicknameValues)

【问题讨论】:

  • 这是 JavaScript,不是 Java。它们是非常不同的编程语言。
  • Object.values(obj)......
  • @RobinZigmond 如果我使用 for...of 我不需要更改 obj,因为 ``obj 不可迭代?
  • 没试过google怎么会不知所措?第二个结果是一个与这个完全匹配的问题。

标签: javascript


【解决方案1】:

你可以试试:

arr.push(obj[value]);

演示:

function values(obj) {
    let arr = [];
    for (let value in obj) {
      arr.push(obj[value]);
    }
    return arr;
  }
let nicknames = {a:`Sunny`, b:`Weirdo`, c:`Chicken`,d:`Tokyo`}
let nicknameValues = values(nicknames)
console.log(nicknameValues);

或者

const result = Object.values({a:`Sunny`, b:`Weirdo`, c:`Chicken`,d:`Tokyo`});
console.log(result);

演示:

const result = Object.values({a:`Sunny`, b:`Weirdo`, c:`Chicken`,d:`Tokyo`});
console.log(result);

【讨论】:

  • 感谢您的帮助!它就像一个魅力!感谢您注意到我可以使用object.values
【解决方案2】:

你可以使用Object.values:

const values = Object.values({a:`Sunny`, b:`Weirdo`, c:`Chicken`,d:`Tokyo`});

console.log(values);

或者你可以改变你的功能values

arr.push(obj[value]);

【讨论】:

    猜你喜欢
    • 2012-03-04
    • 1970-01-01
    • 2013-05-20
    • 2017-01-19
    • 1970-01-01
    • 2015-07-08
    • 2022-10-25
    • 2012-02-24
    • 2020-04-01
    相关资源
    最近更新 更多