Комментарии 27
TS выглядит как смесь JS и С++
Отвратительный стиль подачи и выбор порядка материала.
Необязательные параметры в конструкторе
Необязательные параметры в любой функции, не только в конструкторе, помечаются таким образом. Помимо того, они всегда должны быть после обязательных, а еще могут иметь значение по-умолчанию.
Типов данных в TS не так уж и много, можно было бы и все перечислить. В данном конкретно случае пропущен, как минимум, функциональный тип, который является достаточно важным. Но что еще хуже — ни слова об type SOME_TYPE = 'a' | 'b'
и вообще об, вроде это называется "алгербаическая система типов", но это не точно, что позволяет писать number | string
или someInterface & anotherInterface
.
И что классы с конструкторами и гетерами, что стрелочные функции, есть в js. Пишите про отличия? Пишите про отличия. А так это просто набор каких-то случайных выдержек из документации.
Про модули просто невероятно выразительно расписано. Даже про возможность написать import * as MyPoint from './myPoint';
Ни слова.
А так как в целом синтаксис у них не очень то и отличается, то между ними можно выбирать на базе потребностей проекта.
И, конечно, фичи именно TS горадо важнее, чем описанные, тут, например, стрелочные функции. Которые, вроде, уже во всех языках есть.
get X() { //обратите внимание на пробел перед X return this.x; } set X(value) { //обратите внимание на пробел перед Y this.x = value; }
Его нельзя называть одинаково.
Нашей команде заказчик дал задание: написать ОДНО приложение (типа Megogo) для просмотров фильмов и ТВ каналов на платформах Tizen, WebOS, Android, iOS. Мы думаем использовать для этого Cordova + Angular. интересует как это соеденить, стоит ли вообще соединять или лучше писать на нативном ES6, и вообще кто сталкивался с подобными заданиями подскажите направление решения) ответы типа «пишите для каждой платформы свое приложение» не интересуют, заранее спасибо)
console(message);
В таком виде код упадет с ошибкой компиляции. Также внутри myPoints.ts в метод getDistanceBtw передается неизвестный тип AnotherPoint. getDistanceBtw(another: AnotherPoint) {
//посчитать и вернуть расстояние
}
Это вызовет ошибку при компиляции Typescript. Что-то вроде «Cannot find name 'AnotherPoint'». И зачем вообще приводить код этого метода, если он нигде не вызывается?В статье не все примеры рабочие.Хвалить Typescript за то что он позволяет на стадии компиляции отлавливать ошибки и приводить примеры которые падают на стадии компиляции как рабочие примеры? - Это удивляет.
Основы TypeScript, необходимые для разработки Angular-приложений