首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将(编号= number[])转换为number[]

将(编号= number[])转换为number[]
EN

Stack Overflow用户
提问于 2021-10-05 11:13:39
回答 1查看 93关注 0票数 0

这可能是一个简单的问题,但我还没有搞清楚,因为我还是TypeScript的新手,我有一个变量:

代码语言:javascript
复制
let v1: number | number[];

我想皈依

代码语言:javascript
复制
let v2: number[];

如果v1 =1 => v2为1

如果v1= 1,2 => v2为1,2

EN

回答 1

Stack Overflow用户

发布于 2021-10-05 11:50:43

稍微紧凑的方法(完全不变)

接受的答案似乎有轻微的副作用(当v1是数组时,v2将继承对v1的引用):

代码语言:javascript
复制
const v1: number | number[] = [1, 2]
const v2: number[] = Array.isArray(v1) ? v1 : [v1] // v1: [1, 2], v2: [1, 2]

v1.push(3) // v1: [1, 2, 3], v2: [1, 2, 3]

我可以建议我的解决方案(只需使用Array.prototype.concat()):

代码语言:javascript
复制
let v1: number | number[]
let v2: number[]

v1 = 1

v2 = Array().concat(v1) // v2: [1]

v1 = [1, 2]

v2 = Array().concat(v1) // v2: [1, 2]
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69449404

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档