首页 > 解决方案 > 如何使用文字对象中的键创建变量,javascript

问题描述

在练习中,我必须创建一个名为“fullAddress”的变量,该变量包含给定文字对象中除第一个键之外的所有内容。

我找到了一种可行的解决方案,但我觉得有更好的方法来做到这一点。此外,我无法弄清楚如何有效地在变量中的值之间放置空间。

练习表明最终结果应如下所示:

39 Johnson Ave, 布鲁克林, NY, 11206

但我的看起来像这样:

约翰逊大街 39 号布鲁克林NY11206


练习中提供的文字对象:

const restaurant = {
    name: 'Ichiran Ramen',
    address: `${Math.floor(Math.random() * 100) + 1} Johnson Ave`,
    city: 'Brooklyn',
    state: 'NY',
    zipcode: '11206',
}

我的解决方案:

let fullAddress = restaurant.address + restaurant.city + restaurant.state + restaurant.zipcode; 

标签: javascriptkey

解决方案


给定一个字符串数组,您可以使用values.join(', ')逗号在值之间干净地放置。然后你可以做例如[restaurant.address, restaurant.city, restaurant.state, restaurant.zipcode].join(', ')

如果您想对任何对象更通用地执行此操作,您可以使用Object.values(restaurant).slice(1).join(', ')在第一个和逗号分隔它们之后动态获取所有值。

不过,在这种情况下,我认为显式附加逗号是最有意义的,因为它是一种地址格式(例如,您可能不希望在邮政编码后有空格),所以像restaurant.address + ', ' + restaurant.city + ...


推荐阅读