با دستور زیر تایپ اسکریپت در سیستم نصب میشود:
npm i -g typescript
با دستور زیر میشه نسخه typescript رو متوجه شد:
tsc -v
با دستور زیر فایل ایجاد میشود:
tsc --init
با دستور زیر تبدیل ts به js انجام میشود:
tsc
Target . RootDir . SourceMap . OutDir . RemoveComments . NoUnusedLocals . NoUnusedParameters . NoImplicitReturns . StrictNullChecks . AllowUnreachableCode
تایپ اسکریپت به کدام نسخه جاوااسکریپت تبدیل بشه.
تایپ اسکریپت ها رو از کدام دایرکتوری بخونه.
هنگام تولید فایل جاوااسکریپت ، نسخه مپ هم برای مرورگرها تولید شود.
این فایل نقشه حاوی اطلاعاتی است که به ابزارهای توسعه و اشکالزدایی کمک میکند تا بتوانند کد جاوااسکریپت فشردهشده و مینیفای شده را بازسازی و خوانایی راحتتری در اشکالزدایی ارائه دهند. به طور کلی، فایل نقشه (.map) برای اشکالزدایی، توسعه و پیدا کردن خطاها در کدهای جاوااسکریپت فشرده و مینیفای شده بسیار مفید است.
بعد از تبدیل به جاوااسکریپت ، در کدام دایرکتوری نوشته شود
حذف تمام کامنت های موجود در برنامه قبل از تبدیل شدن به جاوااسکریپت.
💢 کامنت ها از داخل کدهای تایپ اسکریپت حذف نمیشه
اگر متغیری اعلام شود ولی استفاده نشود، اخطار میدهد.
اگر به تابعی پارامتری ارسال شود ولی به هر دلیلی استفاده نشود، اخطار میدهد.
اگر برای تابعی خروجی تعیین نشود، اخطار میدهد.
بعنوان مثال اگر تابعی منتظر متغیری با نوع رشته باشه ولی متغیری با نوع دیگر برایش ارسال شود، خطا میدهد.
برای عدم دریافت خطا، باید این آپشن رو برابر با false قرار داد
function greet(name: string) {
console.log(name.toUpperCase());
}
greet(null);
البته دستور strict نیز این خطا را اعلام میکند ولی برای غیر فعال کردن از این آپشن استفاده میشود.
💢 غیر فعال کردن این اخطار اصلا توصیه نمیشه.
اگر کدی وجود داشته باشد که پروسه اجرا به آن قطعه کد نرسد با غیر فعال کردن این گزینه هشدار داده میشود که این کد قابل دسترسی نیست.
allowUnreachableCode: false // هشدار برای کدهای غیر قابل دسترسی
allowUnreachableCode: true // عدم هشدار برای کدهای غیر قابل دسترسی
اگر بخواهیم در کلاس فرزند یک متد از کلاس والد را override کنیم باید قبل از نام متد حتما کلمه override را بنویسیم.
noImplicitOverride: false // اگر override نوشته نشود خطایی داده نمیشود
noImplicitOverride: true // اگر override نوشته نشود خطا داده میشود
override get fullName(): string {
return `Professor: ${super.fullName}`;
}