当前位置: 首页 > news >正文

HarmonyOS 开发入门 第一章

我们开始讲解HarmonyOS开发的相关知识,注:这章干货不多,如果你有TS基础可以不看

目录

开发环境准备

ArkTS基础快速入门

基本数据类型

变量声明

常量声明

数组

函数

箭头函数

对象

对象方法

联合类型

枚举类型


开发环境准备

DevEco Studio 下载

ArkTS基础快速入门

ArkTS 是华为为 HarmonyOS 应用开发设计的一种编程语言,基于 TypeScript 扩展而来,专为 HarmonyOS 的声明式开发范式优化,是TypeScript的超集。

console.log() //在日志中打印内容

基本数据类型

常见的基本数据类型如下:

1.string 字符串

2.number 数字

3.boolen 布尔类型

变量声明

// let 变量名:数据类型 = 值
let title:string = '标题'
title = '我要学习'

常量声明

// const 常量名: 类型 = 值
const PI: number = 3.14

命名规则:

1.只能包含英文、数字、下划线、$,不能以数字开头

2.不能使用关键字保留字

3.严格区分大小写

数组

// let 数组名:类型[] = [数据1,数据2,数据3,...]
let names:string[] = ['张三','李四','王五']
console.log(names[0]) //取出第一个数据

函数

定义函数

function 函数名(参数){函数体return 返回结果
}

箭头函数

let 函数名=(参数)=>{return 返回值
}

对象

let 对象名:对象结构类型 = 值

1.通过接口约定对象结构类型

interface 接口名{属性1:类型1,属性2:类型2,属性3:类型3
}interface Person{name:string,age:number,height:number
}

2.定义对象并使用

let person:Person = {name:'张三',age:20,height:180
}consloe.log(person.height)

对象方法

interface 接口名称{方法名:(参数:类型) => 返回值类型
}interface Person{say:(msg:string) => void
}
let zs:Person = {say:(msg:string)=>{consloe.log(msg)}
}zs.say('你好')

联合类型

let 变量名:变量类型1 | 变量类型2 = 值// data可以同时存储字符串和data
let data:string | number = 1
data = '消息'//还可以限制值let gender:'男' | '女' | '保密' = '保密'
let gender = 'a' // 会报错

枚举类型

enum 枚举名{常量1 = 值,常量2 = 值,常量3 = 值,...
}enum ThemeColor{Red = '#ff0f29',Blue = '#0077fa',Orange = '#ff7100'
}
let color:ThemeColor = ThemeColor.Red
console.log('主题颜色',color)
http://www.dtcms.com/a/326164.html

相关文章:

  • 力扣面试150题--阶乘后的零,Pow(x,n)直线上最多的点
  • Win10电脑密码忘记如何进入操作系统
  • 基于AS32S601芯片的商业卫星光纤放大器(EDFA)抗单粒子效应解决方案研究
  • 前端组件库双雄对决:Bootstrap vs Element UI 完全指南
  • Speech Databases of Typical Children and Children with SLI 数据集解读
  • 飞轮储能和超级电容综合对比分析
  • LintCode第1181题-二叉树的直径
  • VBA即用型代码手册:计算选择的单词数Count Words in Selection
  • (Arxiv-2025)Phantom-Data:迈向通用的主体一致性视频生成数据集
  • MathType关联Wps实现公式编辑【Tex语法适配】
  • 使用行为树控制机器人(一) —— 节点
  • 【C++语法】输出的设置 iomanip 与 std::ios 中的流操纵符
  • 金蝶云星辰模拟报价功能助力企业快速决策
  • CV 医学影像分类、分割、目标检测,之分类项目拆解
  • Nginx(企业高性能web服务器)
  • 需求优先级如何划分
  • AI炼丹日志-32- memvid 大模型数据库!用视频存储+语义检索实现秒级搜索
  • Pluto Pillow如何靠 “私人定制” 枕头引爆海外市场
  • 学习笔记|decorator 装饰器是什么?
  • 2025-8-11-C++ 学习 暴力枚举(2)
  • 【Linux文件操作】文件操作系统调用
  • [激光原理与应用-231]:光学 - 光学的主要分支、研究对象、应用场合与职业方向(几何光学、物理光学、量子光学、集成光学、非线性光学制造工艺、光学系统设计)
  • 左子树之和
  • 解锁AI性能密码:RAG和智能体评估指标的终极指南
  • 简单的身份验证中间件Tinyauth
  • Day43--动态规划--674. 最长连续递增序列,300. 最长递增子序列,718. 最长重复子数组
  • 算力板卡:AI时代的“算力心脏”
  • 指针和引用的区别
  • SQL中BETWEEN与IN的差异详解
  • Mybatis学习之缓存(九)