//1.变量的声明
import { Type } from '@ohos.arkui.StateManagement';
let str1:string='你好'
//自动推导数据类型
// str2=123 ;// 变量的数据类型,不能改变
//不允许使用var声明
//const声明的是常量,只能赋值一次
const str3:string='123';
//str3='234'
//数据类型
// 1.number
let num1:number=123;//10进制
let num2:number=0B1;//2进制
let num3:number=0o17;//8进制
let num4:number=0xfac;//16进制
let str5:string='hello word';
let str6:string="hello word";
let str7:string=`hello word${num1}`;
//Object 是所有类型的基础类,也就是所有类的父类
let ob:Object='123'
//枚举
enum sex{
男,女
}
let sex1:sex=sex.女;
let sex2:sex=1;
class dog{
play(){
console.log('狗')
}
}
class cat{
play(){
console.log('猫')
}
}
class penguin{
play(){
console.log('企鹅')
}
}
//pet 是联合类型
type pet=dog|cat|penguin
let p1:pet=new dog();
p1.play()
// let a:any='111'
// let a;
let a:null=null;
let a2:undefined=undefined;
let a3:string;
//number.string.boolean.enum.union.null.基本类型
// void.undefined.ailases 复合类型
// array.object
type fun=(a:string)=>string
export class Err{
static add(a:number,b:number):number{
if(!b){
// 抛出异常
throw new Error('除数不能为0')
}
return a/b
}
}
export function tryCatch(){
let aaa:number=0;
try {//有可能出现问题的代码
aaa= Err.add(1,0)
}catch (e){//出现问题后解决办法 e--错误信息
console.log(e)
} finally {//异常的最终处理方案
//不管有没有出现异常都会执行
return aaa;
}
}
function abc(){
//无参函数,并且没有返回值
}
function abc1():string{
// 除了void和any,必须有返回值
return 'jjj'
}
function abc2():void{
// viod:没有返回值
}
function abc3(x:number,y:number){
if (x > 0) {
return x+y;
}else{
return '你好'
}
}
let abcd:number|string=abc3(2,4)
export function getName(name?:string){
return name;
}
//可选参数放在最后
function getAge(name?:string,sex?:string){
if (name) {
return `${name}${sex}`
}
return `无名${sex}`
}
// b默认值是3
function add(a:number,b:number=3){
return a+b;
}
let a1=add(2,6)
let a22=add(2);
//rest参数 不确定数量的参数
function ages(name:string,...ages:number[]){
console.log(`${name}班有${ages.length}`)
let sum=0;
for(let el of ages){
sum+=el
}
console.log(`年龄总和:${sum},平均数${sum/ages.length}`)
return sum/ages.length
}
let avgAge=ages('鸿蒙',12,13,14,15,19)
//有void就不能有返回值
function vo():void{
}
let ab1=10
function ab(){
let ab1=11
return ab1+10;
}
//使用函数作为参数
type fc=(str:string)=>string //对字符串进行处理并返回
function syfc(f:fc){
f('王文龙')
}
function cl(str:string){
return str+'不是人'
}
function aaa(){}
let str33=syfc(cl);
function lam(x:number,y:number){
return x+y
}
let lam1=(x:number,y:number)=>{return x+y}
lam1(1,2)
let lam2=(x:number,y:number)=>x+y
//{}省略,必须只有一行代码
//()无法省略
let lam3=(x:number,y:number)=>{
return x+y
}
function abc5():()=>number{
let a=0;
let g=():number=>{return a++}
return g;
// return abc5();
}
let abc6=abc5()
再识ARKTS
最新推荐文章于 2025-12-07 20:45:00 发布
972

被折叠的 条评论
为什么被折叠?



