第三章 ArkTS语言基础(上):从零开始掌握核心语法

各位同学好,我是老张。今天咱们聊聊ArkTS语言的基础部分。说实话,我刚开始接触ArkTS时,觉得它跟TypeScript挺像的,但用着用着就发现——嗯,坑还真不少。这一章我会把最核心的知识点掰开揉碎了讲,保证你学完就能上手写代码。

3.1 ArkTS语言概述:它到底是什么?

ArkTS是鸿蒙应用开发的主力语言。说白了,它是在TypeScript基础上做了定制和增强。为什么要这么做?因为鸿蒙系统需要更严格的类型检查和更高效的内存管理。

我个人习惯把ArkTS理解为「带镣铐跳舞」——类型约束更严格,但写出来的代码更安全、更稳定。我在项目中遇到过好几次因为类型不匹配导致的运行时崩溃,换成ArkTS后,这类问题基本在编译阶段就暴露了。

核心要点:ArkTS = TypeScript + 鸿蒙特性 + 更严格的类型约束

3.2 基本数据类型:你必须要掌握的几种类型

ArkTS的数据类型,说白了就是给数据贴标签。你想想看,如果没有类型,计算机怎么知道你要拿数字做加法还是拿文字做拼接?

类型 说明 示例
number 数字类型,包含整数和浮点数 let age: number = 25
string 字符串类型 let name: string = "张三"
boolean 布尔类型,true或false let isOk: boolean = true
null 空值 let data: null = null
undefined 未定义 let x: undefined

小技巧:我建议你尽量显式声明类型,别偷懒用let x = 10这种写法。虽然ArkTS能自动推断类型,但显式声明能让代码更清晰,也方便别人阅读。

3.3 变量与常量:数据存储的两种方式

变量和常量,说白了就是数据的容器。变量可以随时换内容,常量一旦赋值就不能改了。

// 变量声明
let count: number = 0
count = 10  // 没问题

// 常量声明
const PI: number = 3.14159
PI = 3.14  // 编译报错!常量不可修改

我曾经在项目里犯过一个低级错误:把一个配置项声明成let,结果被同事不小心改了,导致整个页面渲染出错。从那以后,我养成了一个习惯——能用const的地方绝不用let

注意:ArkTS中,letconst是块级作用域。什么意思?就是在大括号{}里面声明的变量,外面访问不到。这个特性在写循环和条件语句时特别有用。

3.4 运算符与表达式:让数据动起来

运算符就是用来操作数据的工具。我把它分成几类:

  • 算术运算符:+ - * / %,加减乘除取余
  • 比较运算符:> < >= <= == != === !==
  • 逻辑运算符:&& || !
  • 赋值运算符:= += -= *= /=
let a: number = 10
let b: number = 3

// 算术运算
let sum = a + b      // 13
let mod = a % b      // 1

// 比较运算
let isGreater = a > b  // true

// 逻辑运算
let result = (a > 5) && (b < 5)  // true

避坑指南:我曾经在条件判断里用了==而不是===,结果0 == false返回了true。ArkScript里我建议一律用===!==,避免类型转换带来的意外。

3.5 条件分支语句:让代码学会做选择

条件分支,说白了就是让代码根据不同的情况走不同的路。最常用的是if-elseswitch-case

// if-else 示例
let score: number = 85

if (score >= 90) {
  console.log("优秀")
} else if (score >= 80) {
  console.log("良好")
} else if (score >= 60) {
  console.log("及格")
} else {
  console.log("不及格")
}

// switch-case 示例
let day: number = 3
switch (day) {
  case 1:
    console.log("周一")
    break
  case 2:
    console.log("周二")
    break
  case 3:
    console.log("周三")
    break
  default:
    console.log("其他")
}

我个人习惯在条件分支里尽量用switch-case,特别是判断条件比较多的时候。为什么?因为代码更清晰,可读性更好。你想想看,一堆if-else if嵌套在一起,看着就头疼。

小技巧:switch时别忘了加break。我曾经漏掉一个break,结果程序一路执行到底,查了半天才发现。嗯,这种错误犯一次就够了。

知识体系总览

下面这张图是我自己画的,把本章的知识点串起来了。你看一眼就能明白各个知识点之间的关系。

ArkTS语言基础 基本数据类型 number, string, boolean null, undefined 变量与常量 let 变量 const 常量 运算符与表达式 算术、比较、逻辑 条件分支语句 if-else switch-case

这张图把本章的知识结构梳理得很清楚。你从中心节点出发,沿着分支走一遍,就能把整个知识体系串起来。我个人建议你把它截图保存,复习时看一眼就能回忆起全部内容。

专注资料整理