在 typescript 使用命名空间

ex1.ts

namespace mylib
{
    exports function fibo(x:int):int
    {
        if(x==1||x==2)
        {
            return 1;
        }
        return fibo(x-1)+fibo(x-2);
    }
}

ex2.ts

import fibo = mylib.fibo;

function main()
{
    console.log(fibo(10));
}
main();

ex3.ts

///<reference path="./ext1.ts" />
var fibo = mylib.fibo;

function main()
{
    console.log(fibo(10));
}
main();
//两种方式都可以

编译输出为一个文件,使用 es5 或以上支持setter getter

node “C:\Users\Administrator\AppData\Roaming\npm\node_modules\typescript\bin\tsc” -t es5 --outFile ex.js ex1.ts ex2.ts

执行

node ex.js

结果:

55

使用命名空间,输出必须是一个文件,就是编译器将其调用者和被调用者合并了。很类似C编译器将静态库和调用者合并的情况输出一个exe

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值