在业务中,列表页跳转详情页时,经常会将Id值传入,然后再根据id值异步获取数据。
假设有服务端的json数据: <注意,这里的data是指已经从后端获取的json, 而非后端原始的文件>
let data = [
{id: 1, title: 'React'},
{id: 2, title: 'Vue'},
{id: 3, title: 'Angular'},
{id: 4, title: 'Django'},
{id: 5, title: 'Laravel'}
]
在前端,根据id,获取详情
getDetail(_id) {
let result = data.find((item) => {
return item.id == _id
})
console.log(result)
} /*
_id是列表页传进来的id值, 注意:使用==, 如使用===必须左右值的类型相同
对比item.id 是否等于_id, 如相等,则返回。
*/
延伸:数组过滤方法还有filter,for循环,forEach
filter遍历整个数组,可以返回多个结果.
而find找到的第一个立即返回,不会继续往下遍历。