gpt4 book ai didi

javascript - 如何根据参数字符串定义返回类型?流式javascript

转载 作者:行者123 更新时间:2023-11-30 15:07:58 26 4
gpt4 key购买 nike

例如我得到这个 fn:

const aCar = {type: 'car', wheels: 4};
const aBike = {type: 'bike', wheels: 2};

const fn = (type:'a'|'b'):Car|Bike => {
if(type === `a`) return aCar;
if(type === `b`) return aBike;
}

问题是返回的总是 BikeCar,类型不同。我想强制执行,当类型为 a 时,返回始终为 Car 类型,而当 b 类型时自行车

这可能吗?

东西 very close :

// @flow

const items = [1, 2, 3];

type FirstType = ((_: 'a') => number) & ((n: 'b') => Array<number>);

const first: FirstType = (n):any => {
if (n === "a") {
return items[0];
} else if(n === 'b') {
return items;
}
}

const a: number = first('a');
const b: Array<number> = first('b');

谢谢

最佳答案

我找到了一种方法来使用这段代码完成我需要做的事情。正在重载函数,然后使用参数作为对象来定义返回值。是相当不错的解决方案,但可能会更好。

注意:formatNotification 的参数只能是一个对象,不能像formatNotification(type, data) 这样的2个参数。

仍然不是一个很好的解决方案,但半途而废。

enter image description here

还有类型:

enter image description here

关于javascript - 如何根据参数字符串定义返回类型?流式javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45481046/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com