gpt4 book ai didi

javascript - 根据整数返回图像名称,而不使用 if-else

转载 作者:行者123 更新时间:2023-11-28 11:11:14 25 4
gpt4 key购买 nike

如何返回基于整数的图像名称?我有一个想法,但它使用了大量的 ifelse 情况。

所以,事情是这样的,我需要一个函数,它会根据 1 到 500 之间的整数返回图像的名称。如果整数在 1 到 30 之间,我会显示 image1,从此时起我会返回一个不同的图像尺寸为 50、75、100、125、150、175、200...等。

我想到的第一个想法是像这样使用 IF 和 Elses:

if (number >=1 && number <= 29) {
Return image1
} else if (number >=30 && number <=49) {
Return image2
} else if... etc

但是这个函数将会变得巨大,因为我将有大约 20 个 If Else 来覆盖所有可能的结果,直到第 500 个。

另一个选项是使用键:值对创建一个 JSON 对象,并使用整数键获取图像,如下所示:

returnImage(int) {
let images = {
30: 'image1',
50: 'image2',
75: 'image3'
}

return images[int]
}

遗憾的是,如果整数是 37,我不知道如何使其工作。显然,我可以将所有整数列为键,但该函数会比 if else 函数更大,并且会有很多重复,因此这似乎不起作用。

有什么建议吗?

最佳答案

您可以为此使用数学计算:

function returnImage(i) {
let num = 1;
if (i > 30)
num = parseInt((parseInt(i / 25, 10) * 25 - 1) / 25, 10) + 2;
return 'image' + num;
}

console.log(returnImage(10));
console.log(returnImage(30));
console.log(returnImage(49));
console.log(returnImage(50));
console.log(returnImage(74));
console.log(returnImage(100));
console.log(returnImage(125));
console.log(returnImage(130));
console.log(returnImage(200));
console.log(returnImage(300));
console.log(returnImage(490));

关于javascript - 根据整数返回图像名称,而不使用 if-else,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57629668/

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