编码基础
ArkTS语言介绍,这块还得看官方文档,下面是需要注意的一些内容
arkTS基础语法
-
number类型在表示大整数(即超过-9007199254740991~9007199254740991)时会造成精度丢失。在开发时可以按需使用BigInt类型来确保精度
let bigInt: BigInt = BigInt('999999999999999999999999999999999999999999999999999999999999'); -
Union类型,是由多个类型组合成的引用类型。联合类型包含了变量可能的所有类型。
type Animal = Cat | Dog | Frog | number | string | null | undefined;
// Cat、Dog、Frog是一些类型(类或接口)
let animal: Animal = new Cat();
// 获取联合类型中的特定类型值
function foo(animal: Animal) {
if (animal instanceof Frog) { // 判断animal是否是Frog类型
animal.leap(); // animal在这里是Frog类型
}
animal.sleep(); // Animal具有sleep方法
} -
Rest参数:函数的最后一个参数可以是rest参数,格式为...restArgs。rest参数允许函数接收一个由剩余实参组成的数组,类型为任意指定类型,用于处理不定数量的参数输入。
function sum(...numbers: number[]): number {
let res = 0;
for (let n of numbers)
res += n;
return res;
} -
类可以使用对象字面量创建实例
class Point {
x: number = 0; // 实例字段
y: number = 0;
static z:number = 0; // 静态字段
}
let p: Point = {x: 42, y: 42}; -
类中的getter和setter
class Person {
private _age: number = 0;
get age(): number { return this._age; }
set age(x: number) {
if (x < 0) {
throw Error('Invalid age argument');
}
this._age = x;
}
}
let p = new Person();
p.age; // 输出0
p.age = -42; // 设置无效age值会抛出错误