ArkTs

ops/2024/9/23 20:15:03/

一、概述

ArkTs是由TypeScript扩展而来,在继承TypeScript语法的基础上进行了一系列优化,使开发者能够以更简洁、更自然的方式开发应用。

TypeScript语法:

线上网站:https://www.typescriptlang.org/zh/play

二、TS变量

变量声明:

常量声明: const b:number = 200;

如果一个变量或常量的声明包含了初始值,TS便可以根据初始值进行类型推断,此时我们就可以不显示指定其类型:

三、TS函数

3.1 函数声明语法

function sum(a:number,b:number):number{return a + b;
}console.log(sum(2,3));

3.2 参数详解

1.可选参数:可选参数通过参数名后的?进行标识

function getPersonInfo(name:string,age:number,gender?:string):string{if(gender == '未知'){gender = '未知';}return `name:${name},age:${age},gender:${gender}`;
}

2.默认参数:可在函数的参数列表为参数指定默认值

function getPersonInfo(name:string,age:number,gender:string = '未知'):string{return `name:${name},age:${age},gender:${gender}`;
}console.log(getPersonInfo('zzm',21));

3.2特殊类型

1.联合类型:一个函数可能用于处理不同类型的值,这种情况可以使用联合类型

function printNoS(message:number | string){console.log(message);
}

2.任意类型:若函数需要处理任意类型的值

function printNoS(message:any){console.log(message);
}

3.3 返回值详解

1.若函数没有返回值,则可以使用void作为返回值类型,其含义为空

function test():void{console.log('hello');
}

2.类型推断:函数的返回值类型可根据函数内容推断出来,因此可以省略不写

function test():void{console.log('hello');
}function sum(a:number,b:number){return a + b;
}

3.4函数声明的特殊语法

1.匿名函数:匿名函数的语法结构简单,特别适用于简单且仅需使用一次使用的场景

let arr:number[] = [1,2,3,4,5];arr.forEach(function (item:number)
{console.log(item);
});

2.箭头函数:匿名函数的语法进一步简化

let arr:number[] = [1,2,3,4,5];arr.forEach(item =>{console.log(item);});

http://www.ppmy.cn/ops/9952.html

相关文章

什么是 Vue 实例,及其与组件的关系

什么是 Vue 实例,及其与组件的关系 什么是 Vue 实例什么是 Vue 组件Vue 实例与组件的关系 什么是 Vue 实例 每个 Vue 应用都是通过用 Vue 函数创建一个新的 Vue 实例开始的,在创建实例时,可以提供一个选项对象来定义这些配置。 var vm new V…

基于微信小程序的宠物寄养小程序,附源码

博主介绍:✌IT徐师兄、7年大厂程序员经历。全网粉丝15W、csdn博客专家、掘金/华为云//InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇&#x1f3…

【行为型模式】命令模式

一、命令模式概述 命令模式的定义:将“请求”封装成对象,以便使用不同的请求、队列或者日志来参数化其他对象。命令模式也支持可撤销的操作。(对象行为型) 命令模式优缺点: 优点: 1.类间解耦:调用者角色与接收者角色之间没有任何依…

npm i 依赖下载失败

git config --global url."https://".insteadOf git://解决npm install 报错 npm ERR code 128 Permission denied_please make sure you have the correct access right-CSDN博客

【UI】element-ui的el-dialog的遮罩层在模态框的前面bug

最近在写element ui 的时候使用dialog组件,偶然出现了这种情况 原因: 是因为遮罩层插入进了body标签下,z-index高于当前父元素。 解决:在el-dialog标签里加上:modal-append-to-body"false"就可以了。 饿了么官网文档&a…

为什么删除node_modules文件夹很慢

在处理Node.js项目时,删除node_modules文件夹常常是一个非常缓慢的过程。这个现象主要由以下几个原因造成: 1. 文件和目录数量庞大 node_modules 文件夹之所以删除缓慢,最直接的原因是它包含了大量的文件和目录。当你通过npm或yarn这样的包…

sqlplus / as sysdba登陆失败,(ORA-01017)

周一上班检查alert log,看到某个库报出大量的错误 提示无法连接到ASM实例,这是某知名MES厂商DBA创建的11G RAC刚刚​转交到我手上的,这又是给我挖了什么坑? 报错为ORA-01017​用户名密码不对?​what? 登陆o…

学习STM32第十六天

RTC实时时钟 一、简介 RTC是一个独立的BCD格式定时器,提供一个时钟日历,两个可编程报警中断,一个具有中断功能周期性可编程唤醒标志,RTC和时钟配置系统处于后备区域。 通过两个32位寄存器以BCD格式实现秒、分钟、小时&#xff08…