Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
0
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

@lowpolysnow

TypeScriptを用いて、DAZ Scriptでクラスを利用する

※本記事は、Blogの方にも投稿しています。
http://lowpolysnow.com/wp/20181203/70/


以前の記事でTypeScriptでDAZ Scriptを書ける環境を整えたので、せっかくなのでクラスを利用してみたいと思います。

class Greeter {
    greeting: string;
    constructor(message: string) {
        this.greeting = message;
    }
    greet() {
        return "Hello," + this.greeting;
    }
}

(function () {
    let greeter = new Greeter("world");
    MessageBox.information(greeter.greet(), "doit()", "OK");
})();

トランスパイルすることで、次のようなJavaScriptがjsファイルで出力されます。
このjsファイルの拡張子をdsaに書き換えることで、DAZ Scriptとして利用できるようにします。
(以前の記事のように環境をつくておくと、自動で書き換えてくれます)

var Greeter = /** @class */ (function () {
    function Greeter(message) {
        this.greeting = message;
    }
    Greeter.prototype.greet = function () {
        return "Hello," + this.greeting;
    };
    return Greeter;
}());
(function () {
    var greeter = new Greeter("world");
    MessageBox.information(greeter.greet(), "doit()", "OK");
})();

実行結果は次のようになります。
5C1540574019060.png

TypeScriptのコードなど下記のサイトを参考にさせていただきました。
他のクラスの機能のサンプルも揃っているので、時間があるときにどこまでDAZ Scriptで使えるか試してみようと思います。

TypeScriptのClassについて – 公式ドキュメント日本語訳
https://mae.chab.in/archives/59843#post59843-1

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
0
Help us understand the problem. What are the problem?