HarmonyOS应用基础--ArkTS-语法基础

目录

 一. ArkTS-语法基础

1. 基础入门

1.1. 输出语句

2. 认识和存储数据 

2.1. 认识数据

2.2. 存储数据  

2.2.1. 变量

2.2.2. 常量

2.2.3. 命名规则

3. 数组

3.1. 获得数组元素 

4. 函数

4.1. 基本使用

4.2. 参数

4.3. 返回值

4.4. 箭头函数

5. 对象

 5.1. 对象-定义&使用

5.2. 对象-方法

6. 联合类型

7. 枚举类型


 一. ArkTS-语法基础

1. 基础入门

ArkTS:是一门用于开发鸿蒙应用的编程语言

编程语言:用来控制计算机工作的,可以告诉计算机我们要做的事情。

编写代码 → 编译运行 → 查看效果

1.1. 输出语句

写法:console.log('内容')

console.log('来CSDN学习鸿蒙开发')

注释:

  1. 单行注释 // 注释内容,快捷键: Ctrl +/
  2. 块注释 /* 注释内容*/,快捷键:Ctrl + Shift + /

2. 认识和存储数据 

2.1. 认识数据

 编程语言的核心是处理 数据

三种常见的基础数据类型:

  1.  string 字符串:描述信息
  2.  number 数字:计算
  3.  boolean 布尔:判断 (真、假)

2.2. 存储数据  

2.2.1. 变量

变量:专门用来存储数据容器(可变)

 

// let 变量名: 类型 = 值

let title: string = '奥利奥水果捞'

let price: number = 21.8

let isSelect: boolean = true

 示例代码

// 1. 字符串 string
let title: string = '巨无霸汉堡'
console.log('字符串title', title)

// 2. 数字 number
let age: number = 18
console.log('年龄age', age)

// 3. 布尔 boolean,值 true真,false假
let isLogin: boolean = false
console.log('是否登录成功', isLogin)

// 变量存储的数据可以修改
age = 40
console.log('年龄age', age)
2.2.2. 常量

常量:用来存储数据 (不可变)

写法:const 常量名: 类型 = 值

示例代码 

const PI: number = 3.14
console.log('圆周率', PI)

const companyName: string = '华为'
console.log('公司名称', companyName)

2.2.3. 命名规则
  1.  只能包含数字、字母、下划线、$,不能以数字开头
  2.  不能使用内置关键字或保留字 (比如 let、const)
  3.  严格区分大小写

误打误撞:发现中文命名也行,你们可以去试一下

3. 数组

数组:是一个容器,可以存储多个数据

 

let 数组名: 类型[] = [数据1, 数据2,...]

let names: string[] = ['小红', '小明', '大强']

 注意数组指定的类型和存储的数据类型要必须一致,否则会报错

3.1. 获得数组元素 

console.log('取出小明', names[1])

 注意索引号是从 0 开始的

示例代码 

let names: string[] = ['小红', '小明', '大强']
console.log('数组names', names)

// 根据索引取数据
console.log('姓名:', names[0])

4. 函数

函数:是可以被重复使用的代码块

  

 需要三个这样的形状怎么办?

console.log('五角星', '☆')
console.log('五角星', '☆☆')
console.log('五角星', '☆☆☆')
console.log('五角星', '☆☆☆☆')
console.log('五角星', '☆☆☆☆☆')

需要更多个怎么办?

使用函数来解决:函数可以把具有相同或相似逻辑的代码“包裹”起来,有利于代码复用。 

4.1. 基本使用

先定义后调用

function 函数名() {
  函数体
}

函数名()

 示例代码

// 1. 定义函数
function star() {
  console.log('五角星', '☆')
  console.log('五角星', '☆☆')
  console.log('五角星', '☆☆☆')
  console.log('五角星', '☆☆☆☆')
  console.log('五角星', '☆☆☆☆☆')
}

// 2. 调用函数
star()
star()
star()

4.2. 参数

参数的作用:函数能够接收和处理外部的数据,提高函数的灵活性通用性

  • 观察如下函数,哪里不够好?
function sum() {
  let res: number = 10 + 20
  console.log('加法结果是', res)
}

sum()

  • 带参数的函数
function sum(a: number, b: number) {
  let res: number = a + b
  console.log('加法结果是', res)
}

sum(1, 2)
sum(10, 20)
sum(100, 200)
  • 实参:真实数据(函数调用时候的传入的真实数据)
  • 形参:形式上的参数(函数定义时候写的参数)

4.3. 返回值

返回值作用:将函数的执行结果传递给其他部分使用(函数外部)。

默认情况下,函数外部无法直接使用函数内部执行结果;如果想要在函数外部使用内部执行结果,需要将这个结果设置为函数的返回值

关键字:return

function sum(a: number, b: number) {
  let res: number = a + b
  return res
}


let num: number = sum(5, 5)
console.log('num', num)

4.4. 箭头函数

箭头函数是 比普通函数 更简洁 的一种函数写法

let 函数名 = (形参1: 类型, 形参2: 类型) => {
  // 函数体
  // 1. 计算过程
  // 2. 返回结果
  return 计算的结果
}

函数名(实参1, 实参2)

 示例代码

//  参数与返回值
/*
 * 需求1:苹果 2元/斤,买3斤需要多少钱?
 * 需求2:香蕉 4元/斤,买4斤需要多少钱?
 * */

let buy = (price: number, weight: number = 1) => {
  let result: number = price * weight
  return result
}

let apple: number = buy(2)
console.log('苹果', apple)

let banana: number = buy(4, 4)
console.log('香蕉', banana)

5. 对象

作用:用于描述一个物体的特征行为

对象:是一个可以存储多个数据的容器

 编程语言的对象:



 

 键值对:属性名: 属性值

 5.1. 对象-定义&使用

 

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

interface 接口名 {
  属性1: 类型1
  属性2: 类型2
  属性3: 类型3
}

interface Person {
  name: string
  age: number
  weight: number
}

2.定义对象并使用:对象名.属性名

// 1. 定义接口
interface Person {
  name: string
  age: number
  weight: number
}

// 2. 基于接口,定义对象
let ym: Person =  {
  name: '杨幂',
  age: 18,
  weight: 90
}

console.log('名字', ym.name)
console.log('年龄', ym.age)

let lss: Person =  {
  name: '刘诗诗',
  age: 19,
  weight: 88
}

console.log('名字', lss.name)
console.log('年龄', lss.age)

5.2. 对象-方法

方法作用:描述对象的具体行为

1.约定方法类型

interface 接口名称 {
  方法名: (参数:类型) => 返回值类型
}

interface Person{
  dance: () => void
  sing: (song: string) => void
}

2.添加方法(箭头函数)

let ym: Person = {
  dance: () => {
    console.log('杨幂说', '我来跳个舞')
  },
  sing: (song: string) => {
    console.log('杨幂说', '我来唱首', song)
  }
}


// 对象名.方法名(参数)
ym.dance()
ym.sing('爱的供养')

6. 联合类型

联合类型是一种灵活的数据类型,它修饰的变量可以存储不同类型的数据。

 考试成绩:分数 或 级别(A/B/C)

 

// let 变量: 类型1  |  类型2  |  类型3 = 值

let judge: number | string = 100

judge = 'A+'
judge = '优秀'

console.log('年终考试评价', judge)

// 联合类型可以将变量值约定在一组数据范围内进行选择
let gender: 'man' | 'woman' | 'secret' = 'secret'

7. 枚举类型

枚举类型是一种特殊的数据类型,约定变量只能在一组数据范围内选择值。

 

// 联合类型 不方便
'#ff0f29' | '#ff7100' | '#30b30e' 

 使用枚举类型更方便

定义枚举类型(常量列表)

enum 枚举名 {
  常量1 = 值,
  常量2 = 值,
  ......
}

 示例代码

// 1. 定义枚举 (定义常量列表)
enum ThemeColor {
  Red = '#ff0f29',
  Orange = '#ff7100',
  Green = '#30b30e'
}

// 2. 给变量设定枚举类型
let color: ThemeColor = ThemeColor.Orange
console.log('color', color)

  • 18
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值