Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 检查数组中的电子邮件和密码哈希_Javascript_Arrays_Node.js_Mongoose_Bcrypt - Fatal编程技术网

Javascript 检查数组中的电子邮件和密码哈希

Javascript 检查数组中的电子邮件和密码哈希,javascript,arrays,node.js,mongoose,bcrypt,Javascript,Arrays,Node.js,Mongoose,Bcrypt,这意味着我有一个包含电子邮件和密码组合的数组,即: ["john@doe.com", "johnspasswordhashhere", "janet@doe.com", "janetpasswordhashhere", "tim@doe.com", "timspasswordhashhere" ] 如何比较提供的电子邮件和密码哈希是否匹配?我需要使用bcrypt.compare(passtotestvar,passhash)进行比较。您可以首先对用户和密码进行排序,然后循环检查每个用户的凭据

这意味着我有一个包含电子邮件和密码组合的数组,即:

["john@doe.com", "johnspasswordhashhere", "janet@doe.com", "janetpasswordhashhere", "tim@doe.com", "timspasswordhashhere" ]

如何比较提供的电子邮件和密码哈希是否匹配?我需要使用
bcrypt.compare(passtotestvar,passhash)
进行比较。

您可以首先对用户和密码进行排序,然后循环检查每个用户的凭据

const arr=[”john@doe.com“,“JohnPasswordHashhere”janet@doe.com“,“janetpasswordhashhere”tim@doe.com“,“timspasswordhashhere”]
常量排序=arr.reduce((a,e,i)=>(i%2 | | a.push([]),a[a.length-1]。push(e),a),[]))

console.log(已排序)
您对其中的哪一部分有问题,特别是?@jornsharpe我不知道如何使用循环检查每一个其他元素来检查每一个数组元素?我很难理解你说的话mean@GeestWagen我如何做到这一点?我确实还需要检查密码和电子邮件,我不知道应该实现什么逻辑..bcrypt是否会在每次进行简单===检查时生成不同的哈希值?不?如果它每次都创建不同的散列,那么您应该如何以任何有用的方式使用它?只是测试一下。密码“doe”一次生成
2b$10$209PMqkYji90TGA1IUq/7eLoDvPDt/vblIlmBdb4I8gSxEzpxF18y
,另一次生成
2b$10$7rHMLs4cyKpxgDRPX.Q3vOGPARs.gry3xtnldva.klZ2VJXv9QiW
。Bcrypt总是在溶液中加入盐hash@Munchkin啊,是我的错,我完全忘记了,你是对的。如果没有盐的话,我相信你可以,但不能用bcrypt。