【TypeScript入門】特徴と機能の一部をまとめました

【TypeScript入門】特徴と機能の一部をまとめました

ゆーた

ゆーた

実際にTypeScriptに触ってみる

TypeScriptの公式ページには「Playground」というDemoを試せるフィールドが用意されています。

「とりあえず 触ってみないと わからない」ということで、Playgroundにクラスを書いて実装してみましょう!
今回はUserクラスに苗字、名前を渡して、フルネームを取得するというものを作りたいと思います。

1. Userクラスを定義します

class User {
}

2.constructorを作成します

constructorはインスタンスを作成したタイミングで実行されます。

class User {
    constructor(){}
}

3. constructorの引数に名前を渡します

プロパティは外から変更されたくないので、privateにします。
引数がない場合はデフォルトで「foo」と「bar」が入るようにします。

class User {
    constructor(
        private firstName:string = 'foo',
        private lastName:string = 'bar'
    ){}
}

4. getFullNameメソッドを定義します

getFullNameはreturnで何も返しません。
この場合、getFullNameの型はvoidになります。

class User {
    constructor(
        private firstName:string = 'foo',
        private lastName:string = 'bar'
    ){}

    public getFullName():void {
    }
}

5. getFullNameを実装します

constructorで受け取った引数はプロパティとしてセットされるので、this.プロパティ名でアクセスできます。
getFullNameでは苗字と名前の間にスペースを入れてalertで名前を表示します。

class User {
    constructor(
        private firstName:string = 'foo',
        private lastName:string = 'bar'
    ){}

    public getFullName():void {
        alert(this.firstName + ' ' + this.lastName);
    }
}

6. Userを実行します

UserをnewしてgetFullNameを実行します。
右上のJavaScriptと書かれた隣に[Run]があるのでクリックしましょう!

class User {
    constructor(
        private firstName:string = 'foo',
        private lastName:string = 'bar'
    ){}

    public getFullName():void {
        alert(this.firstName + ' ' + this.lastName);
    }
}

let user = new User('Futa','Baba');
user.getFullName();

7. 生成されたコードを見てみましょう

戻って生成されたコードを見てみましょう。
キレイにコンパイル(トランスパイル)されています。

var User = (function () {
    function User(firstName, lastName) {
        if (firstName === void 0) { firstName = 'foo'; }
        if (lastName === void 0) { lastName = 'bar'; }
        this.firstName = firstName;
        this.lastName = lastName;
    }
    User.prototype.getFullName = function () {
        alert(this.firstName + ' ' + this.lastName);
    };
    return User;
})();
var user = new User('Futa', 'Baba');
user.getFullName();

まとめ

ここまで読んでくださいまして、誠にありがとうございました。
今回はTypeScriptの上を薬指でサラッと触ったくらいの内容でしたが、興味を持っていただけたら嬉しいです。
次回があれば実行環境を構築できたらいいかなぁと思っています。

ではでは。

【altJS関連】

LIGはWebサイト制作を支援しています。ご興味のある方は事業ぺージをぜひご覧ください。

Webサイト制作の実績・料金を見る

この記事のシェア数

ゆーた
ゆーた フロントエンドエンジニア / 鈴木 雄太

フロントエンドのゆうたです。 愛知県で働いていましたが、Web業界に転職を機に上京してきました。 釣りが好きですが最近行けてません。川村光大郎さんの釣り方が好きです。

このメンバーの記事をもっと読む
デザイン力×グローバルな開発体制でDXをトータル支援
お問い合わせ 会社概要DL