|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|
|||||
Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
|
Сравнивал ли кто-нибудь производительность TypeScript с нативным JS?
При разработке на TypeScript получаем в итоге сгенерированный код JS, который не похож на тот код, который получился бы, если бы писали непосредственно на нативном JS.
Сравнивал ли кто-нибудь, насколько этот код отличается от нативного по производительности? Может кто видел ссылку на уже проведенные такие тесты? |
|
|||||
http://stackoverflow.com/questions/2...r-and-overhead
http://benchmarksgame.alioth.debian....cript&lang2=v8
__________________
משיח לא בא משיח גם לא מטלפן |
|
|||||
Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
|
Ну да, как-то так я и думал.
По идее, ничего критичного. |
|
|||||
Регистрация: Oct 2006
Сообщений: 2,281
|
Можете в двух словах прояснить такие вопросы:
1)Контроль типов происходит только при "компиляции"?Или в рантайме тоже? 2)Есть ли аналоги флэшевых операторов as/is? |
|
|||||
Lorem ipsum
|
Не знаю, как там в TS, а в JavaScript as не нужен, а is — это instanceof.
__________________
Поймай яблоко 2! |
|
|||||
Регистрация: Oct 2006
Сообщений: 2,281
|
ну в js то и нет типизации по сути.Походу TS с полиморфизмом не дружит.Значит на оба вопроса ответ - "нет".Благодарю
|
|
|||||
Lorem ipsum
|
На второй вопрос был дан конкретный ответ. Что там "нет", автор ответа не понимает. Пояснишь?
__________________
Поймай яблоко 2! |
|
|||||
Регистрация: Oct 2006
Сообщений: 2,281
|
Цитата:
Цитата:
Цитата:
|
|
|||||
Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
|
Цитата:
class Person { name: string; surname: string; private id: number; static title = "Example"; constructor (name: string, surname: string) { this.name = name; this.surname = surname; } setID (id) { this.id = id; } getFullName () { return this.name+" "+this.surname; } } var Person = (function () { function Person(name, surname) { this.name = name; this.surname = surname; } Person.prototype.setID = function (id) { this.id = id; }; Person.prototype.getFullName = function () { return this.name + " " + this.surname; }; Person.title = "Example"; return Person; })(); Кстати, ES-2015 для JS показывает правильное направление развития самого JS. https://learn.javascript.ru/es-modern Причем, кое-кто из браузеров уже поддерживает его, а для остальных есть Babel. Но мы все-таки пока остановились на TypeScript. |
|
|||||
Lorem ipsum
|
О каких 50% идет речь? Ответ был дан по поводу того, во что в конечном счете превращается TS (это видно по ответу ниже моего) — по JavaScript. А в нем аналог is имеется. То, что в JavaScript нет аналога as, не значит, что "на оба вопроса ответ - нет", это же очевидно. Да и отсутствие строгой типизации здесь не понятно к чему упомянуто.
__________________
Поймай яблоко 2! |
Часовой пояс GMT +4, время: 23:57. |
|
« Предыдущая тема | Следующая тема » |
|
|