質問編集履歴

2 コードを分かりやすく編集しました

yamady

yamady score 172

2018/10/15 00:16  投稿

フォーマット変更した後の重複コンテンツを削除したい(JS)
いつも大変お世話になっております。
Rectで重複したコンテンツを削除したいと考えていて
参考URLを見ながらやってみたのですがなぜか重複を排除できません。
**フォーマット変更した後の**コンテンツを削除したいです。
参考URL:[https://qiita.com/cocottejs/items/7afe6d5f27ee7c36c61f](https://qiita.com/cocottejs/items/7afe6d5f27ee7c36c61f)
Reactの配列を表示するにあたって、フォーマットを合わせた後に重複するコンテンツを排除したいと考えているのですが、なかなかアイデアが浮かばず困っています。
> ソースコード(抜粋)
```
```JavaScript
・・・
 {booking.available_datetimes
  .filter((x, i, self) => self.indexOf(x) === i)  
  .map(datetime => (
   <Item key={String(datetime)} onClick={() => onClick(datetime)}>
       <styles.StyledCard selected={Number(d) === Number(selectedDate)}>
         /* ここのフォーマットで重複するものを変更したい */  
         {d.format('YYYY-MM-DD')}
       </styles.StyledCard>
   </Item>
 ))}
・・・
```
> 実現したいアウトプット
```
2018-10-14
2018-10-14
2018-10-14
2018-10-14
2018-10-15
2018-10-15
2018-10-15
```
このようにアウトプットされているものを下記のように変更したいです。
```
2018-10-14 sun
2018-10-15 mon
```
## 追記
上記でやろうとしたことは根本的な意味で間違えていました。
`format`を整えた上で、フィルタリングをかけたいと考えています。
この場合、mapする前にフィルタリングをするべきでしょうか。
それとも、mapした後にフィルタリングすればよろしいでしょうか。
すみませんが、ご助言どうぞよろしくお願いいたします。
先に配列ごとフォーマットを変更するのがよろしいでしょうか。
すみませんが、お助けいただけますと幸いです。
  • JavaScript

    24305 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • React.js

    1490 questions

    Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

1 状況を更新しました

yamady

yamady score 172

2018/10/15 00:04  投稿

重複コンテンツを削除したい(JS)
フォーマット変更した後の重複コンテンツを削除したい(JS)
いつも大変お世話になっております。
Rectで重複したコンテンツを削除したいと考えていて
参考URLを見ながらやってみたのですがなぜか重複を排除できません。
**フォーマット変更した後の**コンテンツを削除したいです。  
参考URL:[https://qiita.com/cocottejs/items/7afe6d5f27ee7c36c61f](https://qiita.com/cocottejs/items/7afe6d5f27ee7c36c61f)
> ソースコード(抜粋)
```
・・・
 {booking.available_datetimes
  .filter((x, i, self) => self.indexOf(x) === i)
  .map(datetime => (
   <Item key={String(datetime)} onClick={() => onClick(datetime)}>
       <styles.StyledCard selected={Number(d) === Number(selectedDate)}>
         {d.format('YYYY-MM-DD')}
       </styles.StyledCard>
   </Item>
 ))}
・・・
```
> 実現したいアウトプット
```
2018-10-14
2018-10-14
2018-10-14
2018-10-14
2018-10-15
2018-10-15
2018-10-15
```
このようにアウトプットされているものを下記のように変更したいです。
```
2018-10-14 sun
2018-10-15 mon
```
```
## 追記
上記でやろうとしたことは根本的な意味で間違えていました。
`format`を整えた上で、フィルタリングをかけたいと考えています。
この場合、mapする前にフィルタリングをするべきでしょうか。
それとも、mapした後にフィルタリングすればよろしいでしょうか。
すみませんが、ご助言どうぞよろしくお願いいたします。
  • JavaScript

    24305 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • React.js

    1490 questions

    Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る