gpt4 book ai didi

arrays - Nodejs数组indexof函数用法

转载 作者:太空宇宙 更新时间:2023-11-03 23:06:39 27 4
gpt4 key购买 nike

我正在尝试在nodejs上开发一个随机类别Id生成器功能。首先,我从数据库中接收所有现有的类别 ID,并将它们插入一个数组中,然后生成一个随机整数(在边界之间),并将该随机数与我的猫 ID 数组进行比较。我使用indexof()函数进行比较,但它总是返回true;可能是什么问题。这是我的代码;

var random = require("random-js")
var selectCategoryID = "SELECT id from category.category";
var catIdresult = client.querySync(selectCategoryID);
var catIdArray = [];
catIdresult.forEach(function (row) {
var catId = row.id;
catIdArray.push(catId);
});

var randomNum = new random()

var K = randomNum.integer(16777000, 16777999);

if(catIdArray.indexOf(K)){
console.log("Error, the id is : " + K);
}
else {console.log("Success, the id is : " + K)}

最佳答案

indexOf函数返回数组中某个项目的第一个索引,如果未找到该项目,则返回 -1 。所以你的代码应该这样做:

if (catIdArray.indexOf(K) === -1) {
//insert into db
}
else {
//error
}

您还可以使用 map 获取所有 ID功能:

catIdArray = catIdresult.map(function(cat) {return +cat.id});

关于arrays - Nodejs数组indexof函数用法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33078693/

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