当前位置: 首页 > 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.lryc.cn/news/617865.html

相关文章:

  • 一文读懂 C# 中的 Lazy<T>
  • Python 在自动化办公汇总和脚本示例
  • 本地文件夹与 GitHub 远程仓库绑定并进行日常操作的完整命令流程
  • 【基本有序数组中找到有且仅有的一个无序元素并进行排序之顺序法】2022-10-12
  • Linux线程——线程控制及理解
  • Transformer前传:Seq2Seq与注意力机制Attention
  • Haystack:面向大模型应用的模块化检索增强生成(RAG)框架
  • 什么情况下会导致日本服务器变慢?解决办法
  • Linux kernel network stack, some good article
  • Flink + Hologres构建实时数仓
  • Spring JDBC
  • TDengine IDMP 基本功能(1.界面布局和操作)
  • 【华为机试】208. 实现 Trie (前缀树)
  • openGauss逻辑备份恢复工具gs_dump/gs_restore
  • AI生成代码时代的商业模式重构:从“软件即产品”到“价值即服务”
  • 大模型落地实践:从技术重构到行业变革的双重突破
  • 亚马逊广告底层逻辑重构:从流量博弈到价值创造的战略升维
  • 思科交换机的不同级别IOS软件有什么区别?
  • Oracle数据库中的Library cache lock和pin介绍
  • Qt——实现”Hello World“、认识对象树与Qt坐标系
  • 力扣109:有序链表转换二叉搜索树
  • Linux下安装jdk
  • 分享一款基于STC8H8K32U-45I-LQFP48单片机的4路数字量输入输出模块
  • STM32——system文件夹
  • Day12 Maven高级
  • 2025牛客多校第七场 双生、象牙 个人题解
  • 大模型提示词工程实践:大语言模型文本转换实践
  • python之uv使用
  • 深度学习和神经网络最基础的mlp,从最基础的开始讲
  • OpenBMC中的snk-psu-manager:架构、原理与应用深度解析