TyepScript的基础学习,算法太TM重要了,从入门到真香

//无限循环

function test2():never{

while(true){

}

}

let x:never=test()

3.2.5 类型推断

概念:如果变量的声明和初始化是同一行,可以省略掉变量类型的声明

let 变量名=值 等价于 let 变量名:变量类型 = 值

说明:在TypeScript中,会有变量推断,即会自动检测你所定义的类型,举例如下

let age=18;//此时变量age的类型被推断为number

age=‘jack’;报错,因为变量age的类型最初以及被推断为number

4. 函数
4.1 返回值和参数
  • 1.返回值类型

(若没有定义返回值的类型,则默认为void空)

function 函数名():返回值类型{

}

let 变量名:变量类型= 函数名();

  • 2.形参类型

实参和形参的类型要一致

实参和形参的数量要一致

function 函数名(形参1:类型,形参2:类型){

}

let 变量名:变量类型=函数名(实参1,实参2);

  • 3.可选参数

function 函数名(形参?:类型):返回值类型{

//这里问号就是表示该参数是可选的

//这个参数可以传值也可以不传

}

//调用如下

不传递参数: 函数名()

传递参数:函数名(实参值)

  • 默认值

function 函数名(形参1:类型=默认值,形参2:类型=默认值){

}

//调用如下

不传递实参:函数名()—编译后----- 函数名(默认值1,默认值2)

传一个实数:函数名(实参1)–编译后—函数名(实参1,默认值2)

传两个实参:函数名(实参1,实参2)—编译后— 函数名(实参1,实参2)

只传第二个实参:函数名(undedined,实参2)–编译后— 函数名(默认值1,实参2)

  • 剩余参数

function add(形参1:类型,形参2:类型,…形参3:类型[]):void{

console.log(a+b);

}

//举例如下

function add(x:number,y:number,…restNum:number[]){

let resNum:number=x+y;

for(let ele of restNum){

resNum+=ele;

}

console.log(resNum)

}

add(1,2);

add(1,2,3,4);

5. 类

在类中,所定义的属性在构造函数中为其赋值(初始化)

class Person{

//直接定义的属性:实例属性,需要通过对象的实例访问

name:string=“huangzhizhen”;

age:number=17;

//若使用static关键字,则可以定义类属性(静态属性),可以直接通过类访问

static age:number=18

constructor(name:string,age:number){

//构造函数,会在对象被创建时调用

//在实例方法中,this就表示当前对象

//属性赋值在构造函数中

this.name=name;

this.age=age

console.log(this);

}

//成员方法(和属性一样,加static可变成静态方法)

say(){

}

}

//创建对象可以看成是调用了该类的构造函数

const per=new Person(‘xiaohei’,4)

const per2=new Person(‘xiaobai’,5)

console.log(per+per2)

小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img
img
img
img

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频

如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注:前端)
img

js基础

1)对js的理解?
2)请说出以下代码输出的值?
3)把以下代码,改写成依次输出0-9
4)如何区分数组对象,普通对象,函数对象
5)面向对象、面向过程
6)面向对象的三大基本特性
7)XML和JSON的区别?
8)Web Worker 和webSocket?
9)Javascript垃圾回收方法?
10)new操作符具体干了什么呢?
11)js延迟加载的方式有哪些?
12)WEB应用从服务器主动推送Data到客户端有那些方式?

js基础.PNG

前16.PNG

js的理解?
2)请说出以下代码输出的值?
3)把以下代码,改写成依次输出0-9
4)如何区分数组对象,普通对象,函数对象
5)面向对象、面向过程
6)面向对象的三大基本特性
7)XML和JSON的区别?
8)Web Worker 和webSocket?
9)Javascript垃圾回收方法?
10)new操作符具体干了什么呢?
11)js延迟加载的方式有哪些?
12)WEB应用从服务器主动推送Data到客户端有那些方式?

[外链图片转存中…(img-XjTWxSRe-1710838345832)]

[外链图片转存中…(img-5iWMquRY-1710838345832)]

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值