• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

11.typescript-元组

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

啊啊啊啊啊啊~,又吃撑,以后不吃饭了!

 

<----------------------------------------☺mizhiweixiao☺---------------------------------------->

 

1.数组和元组
数组是介样儿的:

1 let myName:string[] = ["wei","ze","yang"];                                        
2 let myAge:number[] = [21,22,23];                                                 
3 let student:any[] = ["wei",23,true];                                                           

元组是介样儿的:

 1 let student:[string,number,boolean] = ["weizeyang",22,true];       ----  星期五的尾巴,总是拉不长,哎!

2.赋值方式

(1)介样儿?

1 let student:[string,number,boolean];
2 student[0] = "weizeyang";
3 student[1] = 22;
4 
5 // 也不影响对象类型的方法使用
6 student[0].slice(1);
7 student[1].toFixed(2);

(2)介样儿?

1 let student1:[string,number,boolean] = ["weizeyang",22,true];
2 
3 // 但是这个时候就要注意了不可以少赋值
4 let student2:[string,number,boolean] = ["weizeyang",22];
5 // Error : Type '[string, number]' is not assignable to type '[string, number, boolean]'.
6 // Erroe : Property '2' is missing in type '[string, number]'.

(3)介样儿?

1 let student1:[string,number];
2 student1 = ["weizeyang",22,"女"];
3 
4 // 这时需要注意
5 // 当赋值给越界的元素时,它类型会被限制为元组中每个类型的联合类型
6 
7 let student2:[string,number];
8 student2 = ["weizeyang",22,true];
9 // Error : Type '[string, number, boolean]' is not assignable to type '[string, number]'.

还有一点需要注意的是:

1 let student1:[string,number];
2 student1 = ["weizeyang",22,"女孩儿"];
3 
4 // 这时虽然赋值成功了,但是其方法使用时依然是
5 
6 student1[2].slice(1);
7 // Error : Property 'slice' does not exist on type 'string | number'.

我记得学过这么一种解决办法:

1 let student1:[string,number];
2 student1 = ["weizeyang",22,"女孩儿"];
3 
4 (<string>student1[2]).slice(1);  // 孩儿

 

<----------------------------------------☺mizhiweixiao☺---------------------------------------->

 

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
typescript 中 d.ts module 与 namespace 区别发布时间:2022-07-22
下一篇:
都 2022 了,还不抓紧学 typeScript ?发布时间:2022-07-22
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap