鸿蒙学习1:ArkTS基础入门

1 变量和常量

1.1 变量

        常见的基础数据类型:

        string 字符串、number 数字、boolean布尔 判断。

        变量:专门用来存储数据的容器。

        语法:let  变量名: 数据类型 = 值。例如:let name: = '张三';let price:number = 12.4;

let isSuccess : = true。注意:字符串的值需要用单引号或双引号括起来,推荐单引号。

//1.1变量
//字符串
let name :string = '张三'
console.log('姓名',name)
//修改变量
name = '李四'
console.log('修改后的名字',name)
//数字
let age :number = 18
console.log('年龄',age)
//布尔
let isFirst :boolean = true
console.log('是否第一名',isFirst)

 输出结果:

       

1.2 常量

        常量用来存储不可变的数据,一旦赋值后,修改后编译报错。格式:const 常量名: 类型 = 值。例如:const PI: number = 3.1415926 

//1.2 常量
const PI: number = 3.1415926
console.log('圆周率',PI)

1.3 数组

        数组:是一个可以存储多个相同类型数据的容器。注意:数组指定的类型和存储的数据类型必须一致;数组的索引是从0开始。使用语法:let 数组名: 类型[] = [数据1,数据2,数据3...]。例如:

let names: String[] = ['张三','李四','王五'] .

//2 数组
let names: String[] = ['张三','李四','王五']
console.log('数组names的值是:',names)
let name_02 = names[1]
console.log('获取数组中第二个元素的值:',name_02)

2 函数  

2.1 普通函数

        函数是可以重复使用的代码块。函数可以把具有相同或者相似逻辑的代码封装起来,有利于代码复用。函数的基本使用先定义函数,后调用函数。

        函数定义的语法:

function 函数名(){//处理逻辑
}

        函数调用语法:

函数名()

        使用实例:

//定义函数
function add(a:number,b:number ){return a+b
}
//函数调用
let sum:number = add(1,2);
console.log('求和:',sum)

2.2 箭头函数

        箭头函数比普通函数更简洁。语法如下:

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

 使用实例

//2 箭头函数
//2.1 函数定义
let sum1= (a: number,b: number) => {let result: number = a + breturn result
}
//2.2 函数调用
let result: number = sum1(4,6)
console.log('计算结果:',result)

计算结果:

3 接口和对象

3.1 对象的定义和使用

        对象用于描述一个物体的特性和行为,是一个可以存储多个数据的容器。

        通过interface接口约定对象结构类型,语法:

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

        定义对象,语法:

let 对象名称:对象接口类型 = 值

        使用实例:

//1 通过interface定义对象接口类型
interface Person{name: stringage: numberweight:number
}
//2 定义对象
let dlrb: Person = {name: '迪丽热巴',age: 20,weight:90
}
let glnz:Person = {name: '古力娜扎',age: 21,weight:92
}
//3 使用对象属性
console.log('姓名1,年级,体重',dlrb.name,dlrb.age,dlrb.weight)
console.log('姓名2,年级,体重',glnz.name,glnz.age,glnz.weight)

         运行结果:

3.2 对象方法

        对象的方法用来描述对象的具体行为。

        约定方法类型,语法如下:

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

        使用实例:

//1 通过interface定义对象接口类型
interface Person{name: stringage: numberweight:numberdance:() => voidsing:(song:string) => void
}
//2 定义对象
let dlrb: Person = {name: '迪丽热巴',age: 20,weight:90,dance:() =>{console.log('迪丽热巴要跳舞')},sing:(song:string) =>{console.log('迪丽热巴要唱歌:',song)}
}//3 使用对象属性
console.log('姓名1,年级,体重',dlrb.name,dlrb.age,dlrb.weight)
dlrb.dance()
dlrb.sing('天空之城')

         运行结果:

4 联合类型和枚举

4.1 联合类型

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

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

        示例:

//1 联合类型
let score: string | number = 'a'
score = 100
console.log("得分:",score)
//2 把变量值限定在一组数据范围内选择
let gender: 'man' | 'woman' | 'secret'
gender = 'woman'
console.log('性别是:',gender)

        运行结果:

4.2 枚举类型

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

        定义枚举类型(常量列表),语法如下:

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

        使用实例:

//定义枚举
enum Color{Red = 1,Orange = 2,Black = 3
}
//使用枚举
let color: Color = Color.Red
console.log('颜色值是:',color);

         运行结果;

                        

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/38783.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【triton-inference-server】 官方python_backend 文档及例子

https://github.com/triton-inference-server/python_backend#building-from-source 一。 从源码构建python_backend root@ubuntu-server:/home/ubuntu/hzh# sudo apt-get install rapidjson-dev libarchive-dev zlib1g-dev Reading package lists... Done Building dependency…

vue3中的自定义指令

全局自定义指令 假设我们要创建一个全局指令v-highlight,用于高亮显示元素。这个指令将接受一个颜色参数,并有一个可选的修饰符bold来决定是否加粗文本。 首先,在创建Vue应用时定义这个指令:(这里可以将指令抽离成单…

昂科烧录器支持BPS晶丰明源半导体的多相Buck控制器BPD93004E

芯片烧录行业领导者-昂科技术近日发布最新的烧录软件更新及新增支持的芯片型号列表,其中BPS晶丰明源半导体的多相Buck控制器BPD93004E已经被昂科的通用烧录平台AP8000所支持。 BPD93004E是一款多相Buck控制器,支持原生1~4相,数字方式控制&am…

科普文:一文搞懂jvm原理(二)类加载器

概叙 科普文:一文搞懂jvm(一)jvm概叙-CSDN博客 前面我们介绍了jvm,jvm主要包括两个子系统和两个组件: Class loader(类装载器) 子系统,Execution engine(执行引擎) 子系统;Runtime data area (运行时数据区域)组件&am…

Cambrian-1: A Fully Open, Vision-Centric Exploration of Multimodal LLMs

摘要 https://arxiv.org/pdf/2406.16860v1 我们介绍了Cambrian-1,这是一系列以视觉为中心的多模态大型语言模型(MLLMs)。尽管更强大的语言模型可以增强多模态能力,但视觉组件的设计选择往往没有得到充分的探索,并且与…

学习笔记(linux高级编程)9

void pthread_cleanup_push(void (*routine)(void *), void *arg); 功能:注册一个线程清理函数 参数,routine,线程清理函数的入口 arg,清理函数的参数。 返回值,无 void pthread_cleanup_pop(int execute)…

Perl语言入门指南

一、绪论 1.1 Perl语言概述 1.2 Perl的特色 1.3 Perl面临的问题 1.4 Perl语言的应用领域 二、Perl语言基础 2.1 Perl语言的历史发展 2.2 Perl语言的基本语法 2.3 Perl语言的数据类型 三、Perl语言控制结构 3.1 条件语句 3.2 循环结构 3.3 函数和子程序 四、Perl语…

OpenStack开源虚拟化平台(一)

目录 一、OpenStack背景介绍(一)OpenStack是什么(二)OpenStack的主要服务 二、计算服务Nova(一)Nova组件介绍(二)Libvirt简介(三)Nova中的RabbitMQ解析 OpenS…

MySQL-数据操作类型的角度理解 S锁 X锁

文章目录 1、S锁和S锁互相兼容2、S锁和X锁互斥3、X锁和X锁也互斥4、X锁和S锁也互斥5、select * from account for update;6、select * from account for update nowait;7、select * from account for update skip locked; 1、S锁和S锁互相兼容 2、S锁和X锁互斥 3、X锁和X锁也互…

20240702 每日AI必读资讯

🔍GPTPdf:使用类似GPT-4o的多模态LLM分析PDF文件 - 使用类似 GPT-4o 多模态模型解析 PDF 文件,转换为 Markdown 格式。 - 代码简洁高效,仅293行。 - 解析结果几乎完美包括排版、数学公式、表格、图片、图表等内容。 &#x1…

【记录】IDEA2023的激活与安装

前言: 记录IDEA2023的激活与安装 第一步:官网下载安装包: 下载地址:https://www.jetbrains.com/idea/download/other.html 这个最好选择2023版本,用着很nice。 安装步骤就不详解了,无脑下一步就可以了…

(四十七)Vue Router之路由守卫

文章目录 概念全局路由守卫全局前置守卫全局解析守卫全局后置路由守卫 独享路由守卫组件内的守卫beforeRouteEnterbeforeRouteUpdatebeforeRouteLeave 完整的导航解析流程 上一篇:(四十六)Vue Router组件所独有的两个钩子activate、deactivat…

VLAN原理与配置

AUTHOR :闫小雨 DATE:2024-04-28 目录 VLAN的三种端口类型 VLAN原理 什么是VLAN 为什么使用VLAN VLAN的基本原理 VLAN标签 VLAN标签各字段含义如下: VLAN的划分方式 VLAN的划分包括如下5种方法: VLAN的接口链路类型 创建V…

Android system.img挂载和解除挂载

Android system.img挂载和解除挂载 解包后的super.img,里面最重要的是system.img文件,如何对system.img进行挂载和解除挂载是需要掌握的能力 基础知识 system.img、vendor.img 都存在两种格式raw,sparse ,在ubuntu命令窗口下执行下执行&am…

深度学习之生成对抗网络 BigGAN

BigGAN(Big Generative Adversarial Networks)是生成对抗网络(GAN)的一种变体,专注于生成高质量、大尺寸的图像。BigGAN 是由 DeepMind 的研究人员于 2018 年提出的。其核心思想是通过增加模型的规模(更深的网络和更多的参数)来提高生成图像的质量,同时引入一些新的技术…

便签 Pro(Mac 智能便签工具)专业版怎么样,值得购买吗?

使用 Mac 的小伙伴平时都是怎么记录工作生活中的碎片信息?用聊天软件,还是系统备忘录呢? 实际体验下来,其实都难以称得上好用。 赶紧来了解一下 Mac 多彩思维速记工具便签 Pro!拥有智能边框大小、iCloud 同步、历史记…

矩阵置零解题

给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 示例 1: 输入:matrix [[1,1,1],[1,0,1],[1,1,1]] 输出:[[1,0,1],[0,0,0],[1,0,1]]示例 2: 输入&…

VUE3解决跨域问题

本文基于vue3 vite element-plus pnpm 报错:**** has been blocked by CORS policy: No Access-Control-Allow-Origin header is present on the requested resource. 原因:前端不能直接访问其他IP,需要用vite.config.ts &#xff0…

onvif 基本概念

media_server、device_server和event_server是三个重要的服务。 1. media_server 功能:media_server服务主要负责处理媒体流相关的请求,包括视频和音频流的传输、控制等。实现:该服务通常使用RTSP(Real Time Streaming Protocol…

API-本地存储

学习目标: 掌握本地存储 学习内容: 本地存储介绍本地存储分类存储复杂数据类型 本地存储介绍: 以前我们页面写的数据一刷新页面就没有了,是不是? 随着互联网的快速发展,基于网页的应用越来越普遍,同时也…