一、ArkTS的变量与常量的声明
ArkTS 中使用let声明变量,const声明常量,通过类型注释指定类型。
二、ArkTS的类型
- 基本类型: string, number, boolean等
- 代码示例:
let name: string = '晨仔';
let age: number = 30;
let isMale: boolean = true;
console.log(name);
console.log(age.toString());
console.log(`我的名字是${name},我今年${age}岁`);
- 引用类型: Object. Array、自定义类等
- 枚举类型: Enum
enum Animal {
dog,
cat,
tiger,
lion
}
let animal: Animal = Animal.dog;
- 联合类型: Union(允许变量的值为多个类型)
let luckyNum: number | string = 7;
luckyNum = 'seven';
luckyNum = 7;
- 类型别名: Aliases(允许给一个类型取一个别名,方便理解和复用)
type Matrix = number[][];
type NullableObject = Object | null;
三、不确定初始值的三种安全机制声明方式
一般来说,有时会存在声明变量时不确定初始值。在这类情况下,通常使用联合类型包含null值。如果我们使用了不正确的方式进行了声明那么就会有类似于如下报错:
- 空安全机制的三种声明方式
1.使用if/else进行判空
if (name != null) ( /* do something */ }
2.使用空值合并表达式,??左边的值为null时会返回表达式右边的值
let name: string | null = null
const res = name ??'';
3.使用?可选链,如果是null,运算符会返回undefined
let name: string | null = 'aa';
let len = name?.length:
四、类型安全与类型推断
-
ArkTS是类型安全的语言,编辑器会进行类型检查,实时提示错误信息
- ArkTS支持自动类型推导,没有指定类型时,ArkTS支持使用类型推断自动选择合适的类型
let meaningOfLife = 42; // meaningOfLife 会被推测为 number'类型
五、条件语句
- 用于基于不同的条件来执行不同的动作,根据判断条件的执行结果(true或false)来决定执行的代码块。
let isValid: Boolean = false;
if (Math.random() > 0.5) (生成0-1 随机数
isValid = true;
} else {
isValid = false;
}
- 上述的代码还可以简化成
条件表达式具体如下:
let isValid = Math.random。> 0.5 ? true : false;
六、循环语句
用于重复执行相同的一组语句,提高效率、简化代码
let students: string[] = ['小晨''校长', '乐乐', '李三']
- for循环语句
for (let i = 0; i < students.length; i++) {
console.log(students[i]);
}
- for... of循环语句
for (let student of students) {
console.log(student);
}
- while循环语句
let index - 0;
while (index < students.length) {
console.log(students[index]);
index++;
}
- 输出的log日志:
app Log: 小晨
app Log: 校长
app Log: 乐乐
app Log: 李三