我有一个javascript数组,我想从其中提取前10项。这有可能使用map方法吗?
我尝试过的代码如下:
data.map((item, i) => {
placeIDs.push(item.place_id);
});此代码块返回20 place_ids,但我希望只有10。
因此,我在map方法中尝试了 break ,它的名称是SyntaxError:非法中断语句。
这里,data是google的json结果,它返回20个结果。
一个结果
{
"geometry": {
"location": {
"lat": 61.2180556,
"lng": -149.9002778
},
"viewport": {
"northeast": {
"lat": 61.48393789999999,
"lng": -148.4600069
},
"southwest": {
"lat": 60.733791,
"lng": -150.4206149
}
}
},
"icon": "https://maps.gstatic.com/mapfiles/place_api/icons/geocode-71.png",
"id": "2edc2d446c844a7a55a2ccbe4a2dfda60a5a0264",
"name": "Anchorage",
"photos": [
{
"height": 1152,
"html_attributions": [
"<a href=\"https://maps.google.com/maps/contrib/102061280252416580615\">Efren Norstein</a>"
],
"photo_reference": "CmRaAAAA9aiV4_BwvK6GfpuswWMBzwuO4LM55YUxGuN8q-4kyZ2-eeyl386ArGmc0-qyBr1r49cuibTIx_2QjFNIBoSRZFspgTBKzciji_-srPClBjNKx8q02BmvwM5vZxVy71lSEhDSY8VwSU2I6uHJPBVvZStBGhQ-_-ZcvP8QhktxugB9k_YHr3OX6A",
"width": 2048
}
],
"place_id": "ChIJQT-zBHaRyFYR42iEp1q6fSU",
"reference": "ChIJQT-zBHaRyFYR42iEp1q6fSU",
"scope": "GOOGLE",
"types": ["locality", "political"],
"vicinity": "Anchorage"
},占位符是一个数组。我想从前10个中提取place_ids。
所以,主要的想法是,它是否有可能打破地图的内部?
发布于 2019-12-06 09:32:04
这样就能完成任务了。将[startIndex]和[endIndex]替换为0和10以获得前10。
data.slice([startIndex], [endIndex]).map((item, i) => {
placeIDs.push(item.place_id);
});发布于 2019-12-06 09:33:14
看一看片https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/slice
例如const my10Items = myArray.slice(0,10);
发布于 2019-12-06 09:35:38
var mapdata = [{ a: "x", b: "y" }, { a: 1, b: 2 }, { a: "m", b: "n" }, { a: "aa", b: "bb" }, { a: "11", b: "22" }];
var result = mapdata.splice(0, 3).map(_data => {
return { a: _data.a };
})
// result is [{"a":"x"},{"a":1},{"a":"m"}]
or
var result = mapdata.splice(0, 3).map(_data => {
return _data.a;
})
// result is ["x", 1, "m"]https://stackoverflow.com/questions/59210276
复制相似问题