0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[TypeScript]Objectのvalueの受け取り方で驚いた事例(備忘録)

Last updated at Posted at 2024-12-19

何が起きた

下記のように関数を書いていたのをChatGPTと一緒にリファクタリングしていたら、出てきた案が「そんなのあるの?!」という感じだったので共有します。

いつもの書き方
// (前略)

type CreateAudioMetaProps = {
  title: string;
  filePath: string;
};

export const createAudioMeta = (
  realm: Realm,
  { title: titleA, filePath: filePathB }: CreateAudioMetaProps // ←よく見る書き方で安心する
) => {
  realm.write(() => {
    realm.create(AudioMeta, {
      _id: new Realm.BSON.ObjectId(),
      title: titleA,
      filePath: filePathB,
    });
  });
};

結論

Objectのkeyとvalueの文字列を一致させることで、Objectのvalueの記述を省略できるらしいです。

驚きの書き方
// (前略)

type CreateAudioMetaProps = {
  title: string;
  filePath: string;
};

export const createAudioMeta = (
  realm: Realm,
  { title, filePath }: CreateAudioMetaProps  // ← こんな書き方ができるらしいです
) => {
  realm.write(() => {
    realm.create(AudioMeta, {
      _id: new Realm.BSON.ObjectId(),
      title,                                 // ← こんな書き方ができるらしいです
      filePath,                              // ← こんな書き方ができるらしいです
    });
  });
};

これが筆者の驚いた書き方で、備忘録がてらの共有でした。
皆さんのソースコードリーディング力の底上げのお力になれれば幸いです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?