首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在JavaScript中查询对象?

如何在JavaScript中查询对象?
EN

Stack Overflow用户
提问于 2020-04-17 03:29:08
回答 5查看 73关注 0票数 1

所以,我是一名SQL开发人员,现在发现自己在编写JavaScript,而我完全不知道自己在做什么。我需要查询对象的帮助。假设我有以下对象数组

代码语言:javascript
运行
复制
    var addresses = [
    { street: '104 Bob st', city: 'Boringville', state: 'NC' },
    { street: '207 Ted rd', city: 'Quiettown', state: 'NC' },
    { street: '309 Jim ln', city: 'Lameburg', state: 'VA' }
    ];

我需要做一些事情,比如获取州或镇的列表。在SQL中,这只是从地址中选择城市,或者从地址中选择不同州,或者任何您需要做的事情。不过,在JavaScript中你到底该怎么做呢?

EN

回答 5

Stack Overflow用户

发布于 2020-04-17 03:33:26

您可以使用数组的map function,它返回另一个数组:

代码语言:javascript
运行
复制
const result = addresses.map(address => address.state)
console.log(result) // ['NC', 'NC', 'VA']
票数 5
EN

Stack Overflow用户

发布于 2020-04-17 03:37:10

您可以使用.map()函数。下面是一些例子:

代码语言:javascript
运行
复制
var addresses = [
    { street: '104 Bob st', city: 'Boringville', state: 'NC' },
    { street: '207 Ted rd', city: 'Quiettown', state: 'NC' },
    { street: '309 Jim ln', city: 'Lameburg', state: 'VA' }
];

var states = addresses.map(a => a.state);
var cities = addresses.map(a => a.city);
var fullAddress = address.map(a => a.street + ', ' + a.city + '/' + a.state);

您只需将函数作为参数传递即可。该函数必须为来自数组的每个元素生成一个新值。在我的示例中,a表示数组中的每个元素。箭头(=>)后面的所有内容都是每个元素应该生成的内容。你可以使用操作,调用其他函数...真的什么都行。结果是一个新数组,它具有与原始数组相同的长度,并以相同的顺序包含每个元素的结果。

票数 2
EN

Stack Overflow用户

发布于 2020-04-17 04:14:51

代码语言:javascript
运行
复制
var addresses = [
{ street: '104 Bob st', city: 'Boringville', state: 'NC' },
{ street: '207 Ted rd', city: 'Quiettown', state: 'NC' },
{ street: '309 Jim ln', city: 'Lameburg', state: 'VA' }];


const fullAddress = addresses.map(address => {
return `State: ${address.state}, City: ${address.city}, Street:${address.street}`;
});
console.log(fullAddress);

使用模板字符串、对象解构和隐式返回,不需要花括号和返回语句;使用es6更清晰

代码语言:javascript
运行
复制
const fullAddress = addresses.map(({street, city, state}) =>
`State: ${state}, City: ${city}, Street:${street}`);
console.log(fullAddress);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61258518

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档