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)

运行结果:

目录
相关文章
|
算法 Linux C语言
【我的创作之路】CSDN陪我走过的256个日夜
【我的创作之路】CSDN陪我走过的256个日夜
170 0
|
7月前
|
人工智能 运维 安全
【年终总结系列 2023】成长与收获:回顾过去、展望未来,加油2024!
【1月更文挑战第1天】年关将至,富余的时间也稍显多了些,遂写下此文,好好回顾一下自己这一年的收获,同时也立下2024年的新年flag。
【杂谈】恭喜自己获得CSDN专家称号,努力终会换来结果
【杂谈】恭喜自己获得CSDN专家称号,努力终会换来结果
63 0
【杂谈】恭喜自己获得CSDN专家称号,努力终会换来结果
|
机器学习/深度学习 人工智能 监控
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“一个处女座程序猿”《我是如何通过写作成为百万粉丝博主的?》演讲全文回顾
|
C语言
CSDN2008最有价值博客获奖感言--放飞梦想,让我们扬帆远航
我的第一篇blog是这样写的:“第一次拥有自己的blog,一时竟不知该写些什么!也许这是我新的程序人生的开始...”。
615 0
诚邀投稿,收获个人成长
分享即是一件能够让自己成长又是能帮助他人的事情。 让我们一起分享,共同成长,分享使我们并不孤独。 本公众号欢迎大家投稿,如果你希望你的文章可以被更多人看到,直接将文章链接发我邮箱即可(nanchen2251@163.com),标题需要注明(投稿),谢谢。
848 0
这五年,“IT学子成长指导”专栏与你同行
【想说的话】   近年来,各种评比,要拉票,没大着意。不想操心,不想费人事。记得最近一次的拉票是“2013博客之星”,那时,被前院长压制着,我需要一个民间的奖项,让我能坚持下去。
852 0
斯人已逝,精神犹存——纪念知名技术博客作者雷霄骅同学
今天在视频技术交流群里赫然听到一则让人无比震惊的消息,近些年一直活跃在视频开发领域的中国传媒大学在读博士研究生雷霄骅同学,因劳累过度在学校猝死。直到多家权威媒体证实之前,我们都一直不敢相信这消息的真实性。
1334 0