как же увеличить один из типов «встроенных»? например, массив?
В JS, я хотел бы сделать что-то вроде
Array.prototype.shuffle = function () { ... };
что эквивалентно в машинописи?
как же увеличить один из типов «встроенных»? например, массив?
В JS, я хотел бы сделать что-то вроде
Array.prototype.shuffle = function () { ... };
что эквивалентно в машинописи?
Типы являются «открытыми концами» в машинописном, так что вы можете просто написать:
interface Array {
shuffle: () => any; // <-- Whatever signature you want.
}
И тогда типа расширяется, чтобы включить новую функцию (и вы можете назначить функцию, соответствующую подпись к нему).
Однако следует отметить , что расширение встроенных типов (те , в lib.d.ts - например, массив) имеет проблемы в настоящее время на службе языка, так как он кэширует те внутренне причины перфорации. Есть обходной путь , который я написал вверх на http://typescript.codeplex.com/workitem/4 расширить встроенные типов без ошибок на службе языка в VS.