TypeScript & ES Module
Kooboo支持TypeScript与ES Module
ES Module
这是ECMAScript 定义的JavaScript模块化方法, 你可以在一个文件里定义一些对象方法, 在另一个文件里引用
比如 文件 sample.js定义了
 export function foo(){
 return 'bar'
 }在其他文件中就可以引用
import {foo} from "./sample" 
let text = foo(); 
k.response.write(text); TypeScript
在kooboo的JavaScript文件里可以直接写TypeScript, 运行的时候会动态编译成JavaScript文件执行。
用户可以使用类型, 比如:
const car: { type: string, model: string, year: number } = {
  type: "BYD",
  model: "Song",
  year: 2021
};用户可以定义Class
 class Person {
  private name: string; 
  public constructor(name: string) {
    this.name = name;
  } 
  public getName(): string {
    return this.name;
  }
}  
var newUser = new Person("Smith");  
k.response.write(newUser.getName()); 用户可以使用泛型
class NamedValue<T> {
  private _value: T | undefined;
  constructor(private name: string) {}
  public setValue(value: T) {
    this._value = value;
  }
  public getValue(): T | undefined {
    return this._value;
  }
  public toString(): string {
    return `${this.name}: ${this._value}`;
  }
}
let value = new NamedValue<number>('myNumber');
value.setValue(10);
k.response.write(value.toString());可能定义接口与实现
interface Rectangle {
  height: number,
  width: number
}
interface ColoredRectangle extends Rectangle {
  color: string
}
const coloredRectangle: ColoredRectangle = {
  height: 20,
  width: 10,
  color: "red"
};
k.response.write(coloredRectangle.color); 
 
 