چهارشنبه , مهر ۴ ۱۳۹۷
خانه / مقالات / برنامه نویسی / web developer / Front End / آموزش TypeScript(متغیر ها و توابع) – قسمت دوم
TypeScript چیست؟ - آموزش TypeScript-اینترفیس - آموزش TypeScript(کلاس ها)

آموزش TypeScript(متغیر ها و توابع) – قسمت دوم

آموزش TypeScript –  قبل از مطالعه این مقاله لطفا مقالات پایین را به عنوان پیش نیاز مطالعه کنید.

اکما اسکریپت چیست؟

ویژگی های اکما اسکریپت

معرفی TypeScript

نحوه نصب و کامپایل  TypeScript

برای نصب  typescript نیاز به پکیج منیجر npm دارید که به این منظور به سایت nodejs.org  رفته و آخرین نسخه نود جی اس را بر اساس نوع سیستم عامل دانلود و نصب کنید. و سپس در محیط cmd توسط کد زیر شروع به نصبtypescript کنید.

npm install -g typescript

و برای کامپایل کردن کد تایپ اسکریپت به جاوا اسکریپت دستور زیر را وارد کنید.

tsc helloworld.ts
tsc helloworld.ts -w // watch

انواع داده در  TypeScript

در TypeScript  میتوان هنگام تعریف متغیر‌ها باید نوع داده ای آن‌ها را مشخص کنیم. در TypeScript پنج نوع داده ای وجود دارد که برای تعریف نوع داده از سینتکس   :  استفاده میشود.

let myvar: number;

let myvar: number[];

let myvar: string;

let myvar: boolean;

let myvar = undefined;

let myvar: null; 

let myvar: Array<number>;

let myvar: [string, number]; // معرفی آرایه با تایپ های چندتایی

enum myvar {Red, Green, Blue}; // تعریف ثابت در تایپ اسکریپت

let myvar: any;  // هر تایپت میتواند بگیرد مشابه var در جاوا اسکریپت

function MyFunc(): void {  // هیچ مقداری در خروجی بر نمیگرداند.
    alert("This is my warning message");
}

function MyFunc(message: string): never {// توضیح در پایین
    throw new Error(message);
}
const myconst = 9; // تعریف ثابت در تایپ اسکریپت

نوع  never نشان دهنده انواع مقادیری است که هرگز رخ نمی دهد. به عنوان مثال،  never نوع بازگشتی برای بیان توابعی است که یک استثنا بر می گردانند و یا هیچ گاه مقداری را بر نمی گردانند. متغییر ها نیز زمانی که توسط محافظ نوع مشخص شود که هرگز نمی تواند درست باشد، محدود شده و  از نوع never می شوند. never  یک زیرگروه از تمامی انواع داده و قابل تخصیص به هر نوع داده می باشد در حالی که هیچ نوع داده(بجز نوع خودش) از نوع never و یا قابل تخصیص به آن نمی باشد (بر عکس آن ممکن نیست). حتی نوع any نیز قابل تخصیص به  never نیست.

توابع در TypeScript

توابع را در تایپ اسکریپت و جاوا اسکریپت به سه صورت Named function و Anonymous function و همچنین Arrow function تعریف کرد.

//Named function
function sum(a: number,b:number) : number { 
  return a + b;
}

//Anonymous function
let sum =function(a: number,b:number) : number { 
  return a + b;
}

//Arrow function
let sum =(a: number,b:number) : number =>a + b;

برای تعریف پارمتر اختیاری در تایپ اسکریپت فقط کافیست قبل از تعریف نوع پارمتر علامت علامت سوال ” ؟ ” قرار داده شود.

function buildName(firstName: string, lastName?: string) {
    if (lastName)
        return firstName + " " + lastName;
    else
        return firstName;
}

و همچنین از ویژگی Rest Parameters , Default Parameters اکما اسکریپت 6 براحتی در تایپ اسکریپ استفاده کرد.

//Default Parameters
function sum(a: number = 10,b:number=20) : number { 
  return a + b;
}

//Rest Parameters
let sum = function (...num: number[]): number { 
  var result = 0;
  for (let item of num) {
     result += item;
  }
  return result;
}

function Overloads

پارامتر ورودی function میتواند هر نوعی باشد و در درون تابع بررسی میشود و بر اساس نوع ورودی خروجی متفاوت خواهد بود.

//function Overloads
function sum(a: any, b: any): any { 
  if (typeof a == "number" && typeof b == "number") {
     return a + b;
  } else if((typeof a == "string" && typeof b == "string")) {
       return "Hello "+a + b;
  }
}

 

  • آیا این مقاله مفید بود؟
  • بله   خیر

با تمام وجود علاقمندم مباحث جدید مربوط به برنامه نویسی رو یاد بگیرم و به دیگران یاد بدم. نیمی از زمان روزانه رو صرف یادگیری میکنم. سعی میکنم مقالات مفید و جدید در حوزه برنامه نویسی و به ویژه جاوا اسکریپت رو برای شما دوستان عزیز در لایو گوگل منتشر کنم.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.