使这个 JS 条件公式起作用需要什么?
What is necessary to make this JS conditional formula work?
我有这个 JS 公式来检测超出范围的批号,我的老板总是向他们报告 returns 否,但在我的情况下它总是 returns 是。公式如下:
drug_administrated = 'Azacitidine'
kit_1_d1 = 1100
if
({drug_administrated} = 'Azacitidine' && ( {kit_1_d1} < 1000 || {kit_1_d1} >1116)) {
"No";
}else if
({drug_administrated} = 'Vidaza' && ({kit_1_d1} < 3000 || {kit_1_d1} > 3096) ) {
"No";
}else {
"Yes";
}
在这种情况下,它应该 return 是的,确实如此
但是如果我放置例如
drug_administrated = 'Azacitidine'
kit_1_d1 = 100
if
({drug_administrated} = 'Azacitidine' && ( {kit_1_d1} < 1000 || {kit_1_d1} >1116)) {
"No";
}else if
({drug_administrated} = 'Vidaza' && ({kit_1_d1} < 3000 || {kit_1_d1} > 3096) ) {
"No";
}else {
"Yes";
}
应该return不,但仍然return是。
我应该承认我是一个完全的菜鸟自学 js 学徒,我真的很感谢你的帮助。谢谢
您提供的代码示例中存在多个语法问题:
1) 使用适当的 equality comparisons operators, majority of the time you should be using ===
to compare the value and type of objects being compared. You are using an assignment operator 来初始化一个值。
2) 不要将变量包装在{}
中
3) 你实际上并没有在任何地方返回一个值。
function check(drug, kit) {
// use correct comparison operator === and dont wrap the var in {}
if (drug === 'Azacitidine' && (kit < 1000 || kit > 1116)) {
// return a value to process
return "No";
} else if (drug === 'Vidaza' && (kit < 3000 || kit > 3096)) {
return "No";
} else {
return "Yes";
}
}
console.log(check('Azacitidine', 100));
console.log(check('Azacitidine', 1000));
console.log(check('Vidaza', 1000));
console.log(check('Vidaza', 3000));
强烈建议您查看 MDN 上的文档以帮助学习语言。
我有这个 JS 公式来检测超出范围的批号,我的老板总是向他们报告 returns 否,但在我的情况下它总是 returns 是。公式如下:
drug_administrated = 'Azacitidine'
kit_1_d1 = 1100
if
({drug_administrated} = 'Azacitidine' && ( {kit_1_d1} < 1000 || {kit_1_d1} >1116)) {
"No";
}else if
({drug_administrated} = 'Vidaza' && ({kit_1_d1} < 3000 || {kit_1_d1} > 3096) ) {
"No";
}else {
"Yes";
}
在这种情况下,它应该 return 是的,确实如此 但是如果我放置例如
drug_administrated = 'Azacitidine'
kit_1_d1 = 100
if
({drug_administrated} = 'Azacitidine' && ( {kit_1_d1} < 1000 || {kit_1_d1} >1116)) {
"No";
}else if
({drug_administrated} = 'Vidaza' && ({kit_1_d1} < 3000 || {kit_1_d1} > 3096) ) {
"No";
}else {
"Yes";
}
应该return不,但仍然return是。
我应该承认我是一个完全的菜鸟自学 js 学徒,我真的很感谢你的帮助。谢谢
您提供的代码示例中存在多个语法问题:
1) 使用适当的 equality comparisons operators, majority of the time you should be using ===
to compare the value and type of objects being compared. You are using an assignment operator 来初始化一个值。
2) 不要将变量包装在{}
3) 你实际上并没有在任何地方返回一个值。
function check(drug, kit) {
// use correct comparison operator === and dont wrap the var in {}
if (drug === 'Azacitidine' && (kit < 1000 || kit > 1116)) {
// return a value to process
return "No";
} else if (drug === 'Vidaza' && (kit < 3000 || kit > 3096)) {
return "No";
} else {
return "Yes";
}
}
console.log(check('Azacitidine', 100));
console.log(check('Azacitidine', 1000));
console.log(check('Vidaza', 1000));
console.log(check('Vidaza', 3000));
强烈建议您查看 MDN 上的文档以帮助学习语言。