2023年终总结 —— 我和CSDN相遇的第一年之“技术学习和个人成长的回顾与展望”

🌈个人主页: Aileen_0v0
🔥热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法
💫个人格言:
"没有罗马,那就自己创造罗马~"


目录

🎊对2023的总结与回顾🎊

🏅获奖记录

📚学习记录 

🫶感恩相遇

TypeScrip极速入门

编程语言介绍

 页面功能

TypeScript的基础语法学习 

布尔 类型 和 数字 类型

 字符串 类型 和 数组 类型

枚举 类型

 未知 类型 和 无返回值 类型

联合 类型 


🎊对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 = falseconsole.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)

运行结果:

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

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

相关文章

用CSS中的动画效果做一个转动的表

<!DOCTYPE html> <html lang"en"><head><meta charset"utf-8"><title></title><style>*{margin:0;padding:0;} /*制作表的样式*/.clock{width: 500px;height: 500px;margin:0 auto;margin-top:100px;border-rad…

华为ensp网络设计期末测试题-复盘

网络拓扑图 地址分配表 vlan端口分配表 需求 The device is running!<Huawei>sys Enter system view, return user view with CtrlZ. [Huawei]un in en Info: Information center is disabled. [Huawei]sys S1 [S1]vlan 99 [S1-vlan99]vlan 100 [S1-vlan100]des IT [S1-…

机器学习系列--R语言随机森林进行生存分析(1)

随机森林&#xff08;Breiman 2001a&#xff09;&#xff08;RF&#xff09;是一种非参数统计方法&#xff0c;需要没有关于响应的协变关系的分布假设。RF是一种强大的、非线性的技术&#xff0c;通过拟合一组树来稳定预测精度模型估计。随机生存森林&#xff08;RSF&#xff0…

CSS之元素转换

我想大家在写代码时有一个疑问&#xff0c;块级元素可以转换成其他元素吗&#xff1f; 让我为大家介绍一下元素转换 1.display:block(转换成块元素) display&#xff1a;block可以把我们的行内元素或者行内块元素转换成块元素 接下来让我为大家演示一下&#xff1a; <!DO…

Blender:从新手到专家的全方位指南

Blender&#xff0c;这款强大的开源3D建模和渲染软件&#xff0c;已经成为了CG行业的标准工具之一。它不仅拥有丰富的教程资源&#xff0c;而且还在不断发展和完善中。尽管Blender的教程主要集中在国外网站和YouTube上&#xff0c;但其全面的功能和易用性使它成为许多人的首选工…

springcloud微服务篇--6.网关Gateway

一、为什么需要网关&#xff1f; 网关功能&#xff1a; 身份认证和权限校验 服务路由、负载均衡 请求限流 在SpringCloud中网关的实现包括两种&#xff1a; gateway zuul Zuul是基于Servlet的实现&#xff0c;属于阻塞式编程。而SpringCloudGateway则是基于Spring5中提供的Web…

初始Java

前言&#xff1a; 从今天开始&#xff0c;我们就进入Java的学习了&#xff0c;前期有很多语法是和C语言相同的&#xff0c;所以有些细节肯能会跳过&#xff08;希望各位有一门语言基础&#xff0c;最好是C&#xff09;。 配置环境变量&#xff1a; 在使用Java编译之前&#xf…

第2课 使用FFmpeg读取rtmp流并用openCV显示视频

本课对应源文件下载链接&#xff1a; https://download.csdn.net/download/XiBuQiuChong/88680079 这节课我们开始利用ffmpeg和opencv来实现一个rtmp播放器。播放器的最基本功能其实就两个:显示画面和播放声音。在实现这两个功能前&#xff0c;我们需要先用ffmpeg连接到rtmp服…

副业类小报童热门专栏TOP15

今天介绍15个副业小报童&#xff0c;可以说是当前小报童平台&#xff0c;副业类专栏的天花板内容了 这些专栏&#xff0c;都有免费内容可以查看&#xff0c;而且还是3天无理由退款的&#xff0c;完全可以尝试着订阅一波 关键单价都非常亲民&#xff0c;怎么都不亏&#xff01…

蓝桥杯嵌入式KEY

1.按键原理图 2.按键GPIO引脚设置成输入&#xff0c;上拉模式 3.设置TIM4时钟源为外部时钟源 PSC为80-1 Period为10000-1 打开NVIC 中断时间为10ms 4.在bsp文件中添加interrupt.c文件 5.按键单击代码 6.长按键 7.按键过程和显示过程

2024新年快乐烟花代码

一、前言 很快就是2024年了&#xff0c;让我们好好告别2023&#xff0c;迎接2024。 凡是过往皆是序章&#xff0c;所有未来皆为可盼。在2023年里也许你踏足山藏&#xff0c;拥有花的铺簧书的风光&#xff0c;也许你进入低谷&#xff0c;经历了一个人的兵荒马乱。但没关系&…

第二部分 离散型随机变量

目录 求分布律里的未知数 例1 例2 根据X的分布律写Y的分布律 例3 根据(X,Y)的分布律写Z的分布律 例4 根据(X,Y)的分布律写边缘分布律 例5 X与Y相互独立时的联合分布律 例6 根据分布律求期望、方差 例7 求分布律里的未知数 例1 已知X的分布律为 X-202P0.40.3k ,试求k 解 0.40…