首页 > 解决方案 > 我怎样才能使重复的句子只显示一次?

问题描述

观察是否重复了相同的句子。我试图找出一种方法让它们只出现一次。我尝试过使用Set()以及许多其他尝试,但无济于事。

我也尝试将它们放入一个数组中,但这种尝试只是将每个句子放入一个单独的数组中,而不是逗号分隔。

任何人都知道解决这个问题的好方法,这样每个句子就不会重复(只显示一次)?

{
     Object.keys(data).map((item,index) => {
        let arr = [];
        arr.push(data[item].favColor);
        console.log(arr);
     })
}

的结果console.log(data[item].favColor);

(3) My favorite color is Blue
(3) My favorite color is Blue
(12) My favorite color is Green
(12) My favorite color is Green
(5) My favorite color is Teal
(4) My favorite color is Red
(4) My favorite color is Red
(5) My favorite color is Teal
My favorite color is Purple

我的 React.js 代码:

{
    Object.keys(data).map((item,index) => {
         console.log(data[item].favColor);
         return <tr key={index}><td>{data[item].favColor}</td></tr>
    })
}

标签: javascriptreactjsdebugging

解决方案


这不是一个好的解决方案,但它适用于您共享的结构

let data = [
  {favColor: "some"}, 
  {favColor: "some"}, 
  {favColor: "some1"}, 
  {favColor: "some2"}, 
  {favColor: "some2"}
];

{
    data
     .map(item => JSON.stringify(item))
     .filter((item, index, arr) => arr.indexOf(item) === index)
     .map(item => JSON.parse(item))
     .map((item,index) => {
         console.log(item.favColor);
         return <tr key={index}><td>{item.favColor}</td></tr>
     })
}


推荐阅读