为什么函数最终在节点js中执行
Why is the functions execute in finally in node js
在这里我的 req.body.newTransactionPassword="1234";
我想加密那个值,但是 case is function is execute finally.I 想把它放到我的 order.Is 中,那可能..?
console.log("1");
var nwtp=req.body.newTransactionPassword;
var setPassword = function(nwtp,cb){
console.log("2");
bcrypt.genSalt( 10, function(err, salt) {
bcrypt.hash(nwtp, salt, function(err, hash) {
if (err) {
console.log(err);
return cb(err);
} else {
nwtp = hash;
console.log(nwtp);
return nwtp;
}
});
});
}
setPassword(nwtp);
console.log(nwtp);
console.log("3");
输出是
1
2
1234
3
a$kVmybMj7SsD5ip11lCU3AOFd4ZdKL6/0DzKADYcplIDx9qdZJAy/a
我可以把它放到那个订单中吗?
1
2
a$kVmybMj7SsD5ip11lCU3AOFd4ZdKL6/0DzKADYcplIDx9qdZJAy/a
3
a$kVmybMj7SsD5ip11lCU3AOFd4ZdKL6/0DzKADYcplIDx9qdZJAy/a
你应该使用异步库https://github.com/caolan/async
那么,您的代码可能如下所示
var saltResult = null;
var hashResult = null;
async.series([
function(next) {
bcrypt.genSalt( 10, function(err, salt) {
saltResult = salt;
next(err);
});
},
function(next) {
bcrypt.hash(nwtp, saltResult, function(err, hash) {
hashResult = hash;
next(err);
});
}],
function(err) {
// your final processing here
}
);
在这里我的 req.body.newTransactionPassword="1234"; 我想加密那个值,但是 case is function is execute finally.I 想把它放到我的 order.Is 中,那可能..?
console.log("1");
var nwtp=req.body.newTransactionPassword;
var setPassword = function(nwtp,cb){
console.log("2");
bcrypt.genSalt( 10, function(err, salt) {
bcrypt.hash(nwtp, salt, function(err, hash) {
if (err) {
console.log(err);
return cb(err);
} else {
nwtp = hash;
console.log(nwtp);
return nwtp;
}
});
});
}
setPassword(nwtp);
console.log(nwtp);
console.log("3");
输出是
1
2
1234
3
a$kVmybMj7SsD5ip11lCU3AOFd4ZdKL6/0DzKADYcplIDx9qdZJAy/a
我可以把它放到那个订单中吗?
1
2
a$kVmybMj7SsD5ip11lCU3AOFd4ZdKL6/0DzKADYcplIDx9qdZJAy/a
3
a$kVmybMj7SsD5ip11lCU3AOFd4ZdKL6/0DzKADYcplIDx9qdZJAy/a
你应该使用异步库https://github.com/caolan/async
那么,您的代码可能如下所示
var saltResult = null;
var hashResult = null;
async.series([
function(next) {
bcrypt.genSalt( 10, function(err, salt) {
saltResult = salt;
next(err);
});
},
function(next) {
bcrypt.hash(nwtp, saltResult, function(err, hash) {
hashResult = hash;
next(err);
});
}],
function(err) {
// your final processing here
}
);