4 ms·
I'll go out on a limb though and posit that classes are now idiomatic JS when doing OO. Shops are not cutting modern JS with objects built up via direct prototy
by Rapzid 10y ago
I'll go out on a limb though and posit that classes are now idiomatic JS when doing OO. Shops are not cutting modern JS with objects built up via direct prototype manipulation.
- charlieflowers 10y agoDunno, but I hope not. We built a moderate-sized TS codebase with _no objects at all_. Just functions and data types. Roughly functional ... with the caveat that nothing was preventing us from mutating incoming params (though our intent was not to do so). I'd like to hope many people are using TS in a functional style. EDIT -- there was one object ... we had to create an exception class for some reason ... don't fully recall the details.
- robpalmer 10y agoA codebase with no objects... I am guessing you mean no classes.
- Stoids 10y agoSeeing how functions are objects in JavaScript and all...
- charlieflowers 10y ago:rollseyes:
- crooked-v 10y agoIt's a bit wordy, but I think you can do something like: function test ({param1, param2}: {readonly param1: string, readonly param2: number}) { return }
- robpalmer 10y agoAgreed. ES6 class syntax is superior to constructor functions and prototype mutation, because it's declarative and statically analysable. I think the only legitimate reason left not to use ES6 class syntax is (for perf sensitive code) performance, but that's a negligible and temporary problem as the JS engines will fix that over the next 6 months.