速学TypeScript-精简划重点手册-第二册

574 阅读3分钟

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

👉关于作者

众所周知,人生是一个漫长的流程,不断克服困难,不断反思前进的过程。在这个过程中会产生很多对于人生的质疑和思考,于是我决定将自己的思考,经验和故事全部分享出来,以此寻找共鸣!!!

专注于Android/Unity和各种游戏开发技巧,以及各种资源分享(网站、工具、素材、源码、游戏等)

欢迎关注公众号【空名先生】获取更多资源和交流!

👉前提

非小白文,作者拥有几年编程经验,开发Android和Unity,因当下想开发小游戏学习CocosCreator需要用的TypeScript,所以需要了解下该语言知识。小空会挑重点,简单的回带过甚至不提。

适合做成手册,没事翻翻。

👉实践过程

😜变量声明

和小空进行实际操作过的小伙伴可能发现了上面是用let来声明的变量,这和var有什么区别呢?

其一是作用域奇怪(比如if里面声明的变量,在下方if的外面竟然还能访问),作为Android和Unity开发,使用习惯了Java和C#,突然来这么一出特别容易让人抓狂,稍不留意就死在这了,MMP的。

其二是同一个变量声明多次一点事没有?闹呢?这稍有不留意下面引用不就乱套了?咋?想搅屎棍儿一样?在哪都插那么两下?

总之,就是特别容易让人上头。所以let就是解决这些问题的,她能明确的区分变量的作用域,{}花括号内声明的变量外部不能访问。这和Java及C#就一致了。

哎,这个时候有的小伙伴又要问了,我记着还看见了const,那又是干啥的?

别急,小空接着说,const作用域和let一样,他主要有一个特点就是后续无法再重新赋值了。我记着C#好像也有这么一回事,之前还用过,现在想不起来了。

😜作用域

和多数编程语言一样,全局变量,局部变量,静态变量,分文不差。注意,小空说的是TypeScript,不是JavaScript。经过上面变量声明的解释,了解到原因后,以后写代码就会发现,啊,真是太爽了。

😜运算符

都是编程里面通用的基础知识。

算数运算符(+,-,*,/,%,++,--)

逻辑运算符(&&,||,!)

关系运算符(==,!=,>,<,>=,<=)

按位运算符(&,|,~,^,<<,>>,>>>)

赋值运算符(=,+=,-=,*=,/=)

三元/条件运算符(?:)

😜typeof 运算符

她是一元运算符,返回操作数的数据类型。

let typeOfOne: number = 1;

console.log(typeof typeOfOne); //输出结果:number

😜判断条件/循环

仍然是编程老鸟的基础内容。

if 语句 - 只有当指定条件为 true 时,执行if里面的代码代码

if...else 语句 - 当条件为 true 时执行代码,当条件为 false 时执行else里面的代码

if...else if....else 语句- 使用该语句来选择多个代码块之一来执行

switch 语句 - 使用该语句来选择多个代码块之一来执行

for 循环语句 for...in 循环语句 while 循环 for…of 、forEach、every 和 some 循环  break  continue

for…of是ES6引入的循环,来替代for…in和forEach,允许遍历Arrays(数组), Strings(字符串), Maps(映射), Sets(集合)等可迭代的数据结构,所以她遍历出来的是键对应的值。更新详情看目录 Map对象 里面的代码

//数组类型-for…in 和for…of的区别

myNumberOneNum: number[] = [7, 2, 6, 4];
  for (const num in this.myNumberOneNum) {
            console.log(num); //输出结果:0 1 2 3
        }
        for (const num of this.myNumberOneNum) {
            console.log(num); //输出结果:7  2  6  4
        }

👉其他

📢作者:小空和小芝中的小空

📢转载说明-务必注明来源:芝麻粒儿 的个人主页 - 专栏 - 掘金 (juejin.cn)

📢欢迎点赞👍收藏🌟留言📝