【发布时间】:2020-02-21 11:24:02
【问题描述】:
我有两个 javascript 数组对象 designs 和 articles。
var designs = [
{
design_id:"bwbmbqlujurv", article_id:14782, name:"adidas demogorgon black"
},
{
design_id:"lg9yba2gkcwr", article_id:14782, name:"harry potter wand"
},
{
design_id:"ztvx3yikkkyx", article_id:5570, name:"hogwarts map"
},
{
design_id:"hlzd4afi9en5", article_id:5570, name:"lannister lion"
},
{
design_id:"sdwererefwff", article_id:14782, name:"pokemon bulbasaur"
},
];
var articles = [
{
article_id:6508, dsn_shared_art_id:null, name:"tee man two sides"
},
{
article_id:13510, dsn_shared_art_id:null, name:"tee woman two sides"
},
{
article_id:5570, dsn_shared_art_id:null, name:"necktie"
},
{
article_id:14782, dsn_shared_art_id:null, name:"sweetwear with hood"
},
]
我想获取数组articles中第一个满足这些条件的元素的值:
article => article.article_id == design.article_id || article.dsn_shared_art_id == design.article_id
我尝试使用 .find,但它不起作用:
this.designs.forEach(function(design) {
var $artdata = this.articles.find(article => article.article_id == design.article_id || article.dsn_shared_art_id == design.article_id);
console.log($artdata);//undefined
}.bind(this));
我怎样才能做到这一点?
【问题讨论】:
-
.bind(this)designs 和articles而不是this.designs和this.articles可以正常工作。拥有整个 vuejs 组件部分会很有帮助。
标签: javascript arrays vue.js