2023年——我和CSDN的一周年纪念日|回顾与展望|汗水与成长

简介: 2023年——我和CSDN的一周年纪念日|回顾与展望|汗水与成长



🎊对2023的总结与回顾

🏅获奖记录

📚学习记录

🫶感恩相遇

今年是我与CSDN相遇的第一年,

       首先我要感谢自己,感谢自己的热爱和坚持。自从9月份开始,我每周都坚持更新博客,用心写好每一篇文章。在编程和技术学习方面,我从来没有放松过,一直保持着学习的态度和学徒之心。除了学习学校的知识,我还自主学习了鸿蒙系统(HarmonyOS 4.0),这个过程让我更加清楚地知道自己喜欢什么,并对未来的职业规划有了更加清晰的认识。

       其次,我想感谢所有给予我支持和鼓励的粉丝和大佬们,特别感谢以下几位大佬(hacker707东离与糖宝哈哥撩编程以山河作礼。)他们愿意与我这个计算机小白分享他们的学习和工作经验,他们是我学习的榜样。

       此外,我还要特别感谢CSDN给予我展示和分享的机会。2023年,我从CSDN获得了我的第一个奖项,这份惊喜让我更加自信地参与更多的比赛。以前我一直认为这些东西与我遥不可及,但现在我发现,所有的不自信都源于对失败的恐惧。遇到CSDN之后,我变得更加自信和从容,不再害怕困难和失败。在CSDN这个学习和成长的平台上,我结识了越来越多志同道合的小伙伴,我们一起学习,共同进步。

       2024年,我会继续努力学习好我的专业技能,脚踏实地的一步一个脚印,与CSDN一起前行,共同进步,为自己的技术之路加油!也希望伟大的祖国🇨🇳越来越强大,我们一起乘风破浪,与这个时代高歌前行~

“长风破浪会有时,直挂云帆济沧海⛵~”

TypeScrip极速入门

在HarmonyOS中,主力编程语言为ArcTS,它是基于TypeScript的一种语言,其通过与ArcUI框架的匹配,拓展了生命式UI和状态管理等能力,使开发者能够以更简洁自然的方式开发跨端应用。TypeScript本身是JavaScript的超集,通过引入静态类型定义等特性,提高了代码的可维护性和可读性,有助于在编码阶段检测潜在错误,提高开发效率另外,学习TypeScript还为处理HarmonyOS应用中的UI和应用状态提供了更强大的支持,在并发任务方面也有相应的扩展。为了更好地对HarmonyOS进行开发需要掌握TypeScript语言,本篇博客我们重点介绍TypeScript语言。

编程语言介绍

ArkTS是HarmonyOS优选的主力应用开发语言。它在TypeScript(简称TS)的基础上,匹配ArkUI框架,扩展了声明式UI、状态管理等相应的能力,让开发者以更简洁、更自然的方式开发跨端应用。要了解什么是ArkTS,我们首先要了解下ArkTS、TypeScript和JavaScript之间的关系:

TypeScript 先编译成 JavaScript然后再运行JavaScript,TypeScript在JavaScript基础上加了类型批注,推断和检查的功能.

  1. JavaScript是一种属于网络的高级脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。
  2. TypeScript 是 JavaScript 的一个超集,它扩展了 JavaScript 的语法,通过在JavaScript的基础上添加静态类型定义构建而成,是一个开源的编程语言。
  3. ArkTS兼容TypeScript语言,拓展了声明式UI、状态管理、并发任务等能力。

在学习ArkTS声明式的相关语法之前,我们首先学习下TypeScript的基础语法。


页面功能


打开在线运行,左边的是控制台输入的代码,右边的是运行结果.


TypeScript的基础语法学习

布尔 类型 和 数字 类型

// 定义 boolean 类型 变量
let isOf = true
let isOn = false
console.log(isOf)
console.log(isOn)
// 定义数字类型的变量
let a : number = 12
let b : number = 3.14
let c : number = 0b110
console.log(a)
console.log(b)
console.log(c)

运行结果:

根据运行结果我们可以发现,即使输入的是二进制,输出的也是十进制的数字


字符串 类型 和 数组 类型

// 定义字符串 类型的变量
let aStr : string = "hello"
//定义数组类型,
// 第一种
let arr1 : number[] = [ 1,2,3,4,6,10]
console.log(arr1)
// 数组[下标] : 获取数组中的某个值
console.log(arr1[4])

运行结果:

Ctrl C + 回车 + Ctrl V 可以输出与商行相同的内容。

// 第二种
let arr2 : Array<string> = ['a','b','d']
console.log(arr2)
//  把hello添加到数组的后面
arr2.push("hello")
console.log(arr2)
//  删除数组最后的元素
arr2.pop()
console.log(arr2)
arr2.splice(2,0,"hello")
console.log(arr2)
arr2.splice(1, 1)
console.log(arr2)

运行结果:

TypeScript中,可以使用数组的splice方法来实现删除和插入操作。

splice方法接受三个参数,分别是操作的起始索引删除的元素个数要插入的元素

删除元素,可以将起始索引指定删除的元素的位置删除的元素个数设为非零

例如,将一个数组arr中索引为i的元素删除,可以使用以下代码:

arr.splice(i, 1);

插入元素,可以将删除的元素个数设为0起始索引指定要插入的位置,然后在该位置插入要插入的元素。

例如,将一个元素插入到数组arr的索引为i的位置,可以使用以下代码:

arr.splice(i, 0, element);

需要注意的是,splice方法会直接修改原数组,并返回被删除的元素组成的新数组(如果有删除的元素)。


元组:有确定的元素数量和类型

// 定义一个元组
let t1: [string,number];
t1 = ["hello",100]
console.log(t1,t1[0])

运行结果:


枚举 类型

enum类型JavaScript 标准数据类型的一个补充,使用枚举类型可以为一组数值赋予友好的名字。——固定好的常量,不会随意改动

例如:我们这里定义SexValue为MAIL和FEMAIL,到时候可以使用SexValue.MAIL

// 定义枚举
enum SexValue{
    MAIL = '男',
    FEMAIL = '女'
}
let gender :SexValue = SexValue.MAIL
console.log(gender)

运行结果:


未知 类型 和 无返回值 类型

// 定义 未知类型
let noSure : unknown;
noSure = 4
noSure = 'hello world'
// void : 函数没有返回值
function myFunc(): void{
    console.log('执行函数,没有返回值')
}
myFunc()
// Null , undefined 类型
let n = null
let un = undefined

运行结果:


联合 类型

可以传入数字或字符串类型的值进行调用。

// 联合类型
let myF : string | number = "hello 2024!"
console.log(myF)

运行结果:

目录
相关文章
【杂谈】恭喜自己获得CSDN专家称号,努力终会换来结果
【杂谈】恭喜自己获得CSDN专家称号,努力终会换来结果
59 0
【杂谈】恭喜自己获得CSDN专家称号,努力终会换来结果
|
数据采集 人工智能 算法
【周末闲谈】AI的旅途
【周末闲谈】AI的旅途
116 0
|
设计模式 监控 前端开发
人物志|风末:我成长路上的4个关键词
人物志|风末:我成长路上的4个关键词
108 0
|
机器学习/深度学习 人工智能 监控
DayDayUp:7月25日,如何打造技术品牌影响力?顶级大咖独家传授—阿里云乘风者计划专家博主&CSDN TOP1“一个处女座程序猿”《我是如何通过写作成为百万粉丝博主的?》演讲全文回顾
DayDayUp:7月25日,如何打造技术品牌影响力?顶级大咖独家传授—阿里云乘风者计划专家博主&CSDN TOP1“一个处女座程序猿”《我是如何通过写作成为百万粉丝博主的?》演讲全文回顾 目录 个人简介 一、什么内容是受欢迎的写作内容? 1.1、学生(计算机相关)群体 1.2、同行(开发者)群体 1.3、好内容的特点 二、一些经典的技术文章逻辑框架设计 2.1、从写作逻辑和结构角度考虑 (1)、对于bug类型的文章——通过分析刨根问底 (2)、对于学习类型的文章—通过案例学以致用 (3)、对于总结类型的文章—通过思考产生共鸣 2.2、从写作技巧考虑 (1)、题目和摘要必须简单、清晰明了且定位
DayDayUp:7月25日,如何打造技术品牌影响力?顶级大咖独家传授—阿里云乘风者计划专家博主&CSDN TOP1“一个处女座程序猿”《我是如何通过写作成为百万粉丝博主的?》演讲全文回顾
|
人工智能 Java 大数据
CSDN:2020年度CSDN博客之星评选竞赛——180号【一个处女座的程序猿】,感谢您,投上的宝贵一票,感谢!感恩!
CSDN:2020年度CSDN博客之星评选竞赛——180号【一个处女座的程序猿】,感谢您,投上的宝贵一票,感谢!感恩!
CSDN:2020年度CSDN博客之星评选竞赛——180号【一个处女座的程序猿】,感谢您,投上的宝贵一票,感谢!感恩!
|
人工智能 运维 开发者
【云栖精选】帮你把握“金三银四”,阿里开发者招聘节面经总结帖来袭
云栖精选,一文为你网罗本周云栖社区本周精华帖,精彩不容错过。换工作、找实习,那你一定不能错过“金三银四”,想要来阿里巴巴,一些笔试和面试技巧一定不能少。本期中,为大家选取了几篇关于阿里招聘节的相关内容。
7439 0
写在自己五年陈(分享成长感悟)-毕啸
###为什么会有这篇文章 + 几个月前在团队内部做了一个关于个人成长经验的分享,感觉效果还可以(自我感觉哈哈),一直想把当时分享的整理成文章,但是一直在草稿箱里面没能成型; + 正好最近五年了,想想五年过的还真快,中间各种经历,从周围同事中学到了很多,想想,还是总结一下吧; ### 关于自己的情况 + 5年来做过的事情自我感觉挺多,一直在电商物流领域,然后成长的话觉得不算快但也不慢,团
12913 0
|
Linux PHP
刚入门互联网IT 行业,求个师傅!!
刚入门互联网IT 行业,求个师傅!!
1128 0
|
C语言
CSDN2008最有价值博客获奖感言--放飞梦想,让我们扬帆远航
我的第一篇blog是这样写的:“第一次拥有自己的blog,一时竟不知该写些什么!也许这是我新的程序人生的开始...”。
613 0