产房里有4个妈妈,预产期都是今天,几点生不知道,生男孩还是女孩也不知道,一切交给命运的安排。
我们用随机数来模拟命运,如果随机数大于等于0.5就代表男孩,小于0.5代表女孩; 我们用随机数模拟生孩子的时间,随机数代表距离现在多少个小时生; 我们用随机数代表顺产还是难产,如果随机数小于0.5就代表难产,大于等于0.5代表顺产
//命运之手
function sex(){
let sex=Math.round(Math.random())===1?'男':'女';
return sex;
}
function when(){
let time=Math.random()*1000;
return time;
}
function shunchan(){
return Math.round(Math.random());
}
//生孩子的过程
const mama1=new Promise((resolve,reject)=>{
setTimeout(() => {
if(shunchan()){
resolve(sex())
}else{
reject('妈妈1难产');
}
}, when());
});
const mama2=new Promise((resolve,reject)=>{
setTimeout(() => {
if(shunchan()){
resolve(sex())
}else{
reject('妈妈2难产');
}
}, when());
});
const mama3=new Promise((resolve,reject)=>{
setTimeout(() => {
if(shunchan()){
resolve(sex())
}else{
reject('妈妈3难产');
}
}, when());
});
const mama4=new Promise((resolve,reject)=>{
setTimeout(() => {
if(shunchan()){
resolve(sex())
}else{
reject('妈妈4难产');
}
}, when());
});
// 等待结果的过程
mama1.then((res)=>{
console.log('妈妈1的宝宝是',res);
},(err)=>{
console.log(err);
});
mama2.then((res)=>{
console.log('妈妈2的宝宝是',res);
},(err)=>{
console.log(err);
});
mama3.then((res)=>{
console.log('妈妈3的宝宝是',res);
},(err)=>{
console.log(err);
});
mama4.then((res)=>{
console.log('妈妈4的宝宝是',res);
},(err)=>{
console.log(err);
});