masayuki-0319 / scrap

0 stars 0 forks source link

[Scrap Research] typescript にカスケード演算子は存在するのか? #24

Closed masayuki-0319 closed 3 years ago

masayuki-0319 commented 3 years ago

Problem

winston の設定時に以下のように記述する。

winston.addColors("...");
const Logger = winston.createLogger("...");

しかし同じ instance に対する設定用 function なら、Dart みたいに書けないものか気になった。

// ↓こんな感じ
const Logger = winston
    ..addColors("...")
    .createLogger("...");

↓ Dart みたいな感じで function を繋げたい。 https://olegvaraksin.medium.com/14-language-features-in-typescript-and-dart-you-may-miss-in-java-6bdc11c6fee7 1_vDkqSbbEzweTXWiIJQvDVg

Want

typescript にカスケード演算子 ( cascade operator ) は存在するのか?

Result

存在しなかった。 https://github.com/microsoft/TypeScript/issues/8536


Avoid adding expression-level syntax.

https://github.com/Microsoft/TypeScript/wiki/TypeScript-Design-Goals#goals

また、上記の通り実装しない雰囲気を感じる。


書いてるうちに気づいたけど、、 例で出した winston でカスケード記法使うと可読性悪化してる。。例がよくない。

masayuki-0319 commented 3 years ago

ECMAScript 次第な感じする。