鸿蒙开发——4.ArkTS快速入门指南

鸿蒙开发------4.ArkTS快速入门指南

ArkTS 新手友好版语法指南

1.🖧 知识图谱

2.🌟 变量与常量

变量 (let)

typescript 复制代码
let name = "小明"  // 自动推断为字符串类型
name = "小红"     // 正确,变量可重新赋值

常量 (const)

typescript 复制代码
const PI = 3.14
// PI = 3.1415 ❌ 报错!常量不可修改

小技巧:初始化时类型可自动推断,无需显式声明


3.🔢 核心数据类型

基础类型

类型 示例 特点
number let score = 95 支持整数/浮点数/不同进制
string let msg = "Hi!" 支持模板字符串${变量}
boolean let isOpen = true 仅true/false两个值
void function sayHi(){} 表示无返回值

复合类型

数组

typescript 复制代码
let fruits: string[] = ["苹果", "香蕉"]
console.log(fruits[0])  // 输出"苹果"

对象

typescript 复制代码
interface Person {
  name: string
  age: number
}
let user: Person = { name: "张三", age: 25 }

特殊类型

联合类型

typescript 复制代码
let id: string | number = "A001"  // 可以是字符串或数字

枚举

typescript 复制代码
enum Direction { Up, Down, Left, Right }
let move = Direction.Up

4.⚙️ 运算符与流程控制

常用运算符

typescript 复制代码
// 算术运算
let sum = 10 + 5 

// 逻辑判断
if (age > 18 && isStudent) { ... }

// 三元表达式
let status = score >= 60 ? "及格" : "不及格"

流程控制

条件判断

typescript 复制代码
if (temperature > 30) {
  console.log("开启空调")
} else if (temperature < 10) {
  console.log("开启暖气")
}

循环遍历

typescript 复制代码
// for循环
for (let i = 0; i < 5; i++) {
  console.log(`第${i}次循环`)
}

// for-of遍历数组
for (let fruit of fruits) {
  console.log(fruit)
}

5.🛠️ 函数与模块化

函数定义

typescript 复制代码
// 基础函数
function add(a: number, b: number): number {
  return a + b
}

// 箭头函数
const multiply = (x: number, y: number) => x * y

// 可选参数
function greet(name?: string) {
  console.log(name ? `你好, ${name}!` : "你好!")
}

模块化开发

导出模块

typescript 复制代码
// math.ts
export const PI = 3.14
export function circleArea(r: number) {
  return PI * r * r
}

导入模块

typescript 复制代码
import { PI, circleArea } from './math'
console.log(circleArea(2)) // 输出12.56

6.🏗️ 面向对象编程

类与对象

typescript 复制代码
class Animal {
  // 属性
  name: string
  
  // 构造函数
  constructor(name: string) {
    this.name = name
  }

  // 方法
  speak() {
    console.log(`${this.name} 发出叫声`)
  }
}

// 创建实例
let dog = new Animal("旺财")
dog.speak() // 输出"旺财 发出叫声"

继承与多态

typescript 复制代码
class Cat extends Animal {
  // 重写方法
  speak() {
    console.log(`${this.name} 喵喵叫`)
  }
}

let kitty = new Cat("小白")
kitty.speak() // 输出"小白 喵喵叫"

访问控制

修饰符 访问权限
public 任意位置访问 (默认)
private 仅类内部访问
protected 类内部和子类访问

7.💡 实用技巧

  1. 空安全机制:默认变量不可为null,需用联合类型声明

    typescript 复制代码
    let age: number | null = null
  2. 可选链操作:避免访问null/undefined属性时的报错

    typescript 复制代码
    console.log(user?.address?.city) // 安全访问嵌套属性
  3. 类型断言:明确告知编译器变量类型

    typescript 复制代码
    let input = document.getElementById('user') as HTMLInputElement

新手避坑指南

  • 使用===代替==进行严格相等判断
  • 函数参数必须声明类型
  • 类属性必须初始化

更多完整示例和进阶用法可参考华为官方文档:ArkTS语言介绍

相关推荐
无风听海12 分钟前
HarmonyOS之Environment
harmonyos
特立独行的猫a14 分钟前
HarmonyOS鸿蒙中的NES游戏模拟器的完整实现
游戏·华为·harmonyos·fc·nes
小雨青年15 分钟前
创建你的第一个 HarmonyOS 6 鸿蒙应用 Hello HarmonyOS
华为·harmonyos
猫林老师1 小时前
OpenHarmony内核基础:LiteOS-M内核与POSIX/CMSIS接口
华为·harmonyos
程序员潘Sir2 小时前
鸿蒙应用开发从入门到实战(二十三):一文搞懂ArkUI弹性布局
harmonyos·鸿蒙
猫林老师3 小时前
OpenHarmony南向开发环境搭建 - 深入理解Ubuntu、DevEco Device Tool与HPM
linux·运维·ubuntu·harmonyos·openharmony
Bert丶seven4 小时前
鸿蒙Harmony实战开发教学Day1-IDE新版本安装篇
华为·harmonyos·arkts·鸿蒙·鸿蒙系统·arkui·开发教学
2501_9197490312 小时前
鸿蒙:用Toggle组件实现选择框、开关样式
华为·harmonyos
熊猫钓鱼>_>13 小时前
ArkTS 深度解析:鸿蒙生态的基石与未来之路
华为·harmonyos