Wpis z mikrobloga

Jak takie coś zaimplementować w #javascript?

const foo = {
a: 42,
b: 2137
}
foo.a // returns 42
foo.a.formatted // returns "Your change is 42 USD"
foo.b // returns 2137
foo.b.formatted // returns "Your change is 2137 USD"

Myślałem o Proxy ale tam nie dostanę property formatted. Nie potrzebuję implementacji tylko słowa klucz żeby sobie to wygooglać albo jak się to nazywa w innych językach.

#webdev #programowanie
  • 7
via Wykop Mobilny (Android)
  • 0
@m4kb0l: Wygląda jakbyś jednak chciał proxy na foo, które zwróci proxy na a/b i tam możesz sztucznie zwracać tą wartość.

Ale wygląda to jak gówno w takim przykładzie, zwłaszcza jak masz pod tym zabity string w jakimś języku zamiast funkcji wyższego rzędu xD

const createFormatter = (template) => (value) => template.format(value)

const formatted = createFormatter("Your change is {0} USD")

formatted(foo.b)

Ale nie wiem, jestem dżawaskryptowcem w wersji bez skrypt, może takie