我如何在Javascript中分配数字

How can I assign numbers in Javascript?

本文关键字:分配 数字 Javascript      更新时间:2023-09-26

我正在用Javascript构建一个风险计算器程序,对于它,我有1-3的等级,0表示没有风险,3表示最高风险。对于每一个选项(年龄、性别、身体质量指数、血压、体温、吸烟情况等),我将给它们分配一个数字(0-3),并用这个数字来确定风险的百分比。

例子:年龄:

18-39 = 0

40+ = 2风险

用户选择的年龄将加到他们的个人百分比中。

如何编写这个程序?

List<StringWithValue> stringList == new ArrayList<StringWithValue>(); 
    int myRisk;
   // no risk  = "0";
    //some risk = "1";
   // risk = "2";
   //abnormal risk = "3";
   var a = "0", b = "1", c = "2", d = "3"

   if(message == "Age") {
      alert("Ages 18 to 39 have a lower risk of cancer" + ''n'n' + 
      "Than for those over 40.");
      StringAge = "18-39";
       StringValue = "a";
       System.out.println("Age" = "a");

       StringAge_2 = "40-80";
       StringValue = "c";
       System.out.println("Age_2" = "c");

   } else if(message =="Sex") {
       alert("Choose your biological gender" + ''n'n' + "Males are more likely to develop" +
            " lung cancer than females.");
   } else if(message == "Systolic Blood Pressure") {
           alert("Low blood pressure is anything below 100" + 'n'n' + "Normal range is 120-130" +
   "High blood pressure is over 135.");
   } else if(message =="Diastolic Blood Pressure") {
       alert("Low blood pressure is anything below 70" + 'n'n' +"Normal range is 80-85" + 
   "High blood pressure is over 90.");
   } else if(message =="Temperature") {
       alert("Below 98.6 degrees Fahrenheit/37 degrees Celsius is unhealthy" + 'n'n' + "Normal range is at exactly 98.6 degrees/37 degrees Celsius" +
   "Anything above 98.6 degrees Fahrenheit/37 degrees Celsius is abnormal.");
   } else if(message =="Race") {
       alert("African Americans have a higher chance of lung cancer" + 'n'n' + "Followed by Caucasians" +
   "Asians, Pacific Islanders, Hispanics, and Native Americans have a low percentage.");

   }
   else if(message == "family") {
      alert("Family History of Lung Cancer" + ''n'n' +
      "Choose Yes if an immediate family member had " +
      "lung cancer.");
      "Note: The Calculator is only applicable for persons without a previous diagnosis of lung cancer.");
   }
}
function radiobtnchange(units){
    if(units == "Standard"){
        document.getElementById('lblHeightUnits').innerHTML = "in";
        document.getElementById('lblWeightUnits').innerHTML = "lbs";
    }
    if(units == "Metric"){
        document.getElementById('lblHeightUnits').innerHTML = "cm";
        document.getElementById('lblWeightUnits').innerHTML = "kg";
    }   
}
function clearAllFields(theForm) {
   if(theForm.age) clearObjValue(theForm.race);
   if(theForm.sex) clearObjValue(theForm.pca3);
   if(theForm.systolic_blood_pressure) clearObjValue(theForm.free_psa);
   if(theForm.diastolic_blood_pressure) clearObjValue(theForm.pro_psa);
   if(theForm.bmi) clearObjValue(theForm.height);
   if(theForm.temperature) clearObjValue(theForm.weight);
   if(theForm.prostate_volume) clearObjValue(theForm.prostate_volume);
   if(theForm.num_biopsy_cores) clearObjValue(theForm.num_biopsy_cores);
   if(theForm.aua_symptom_score) clearObjValue(theForm.aua_symptom_score);
   if(theForm.age) clearObjValue(theForm.age);
   if(theForm.psa) clearObjValue(theForm.psa);
   if(theForm.familyhistory) clearObjValue(theForm.familyhistory);
   if(theForm.dre) clearObjValue(theForm.dre);
   if(theForm.biopsy) clearObjValue(theForm.biopsy);
   if(theForm.finasteride) clearObjValue(theForm.finasteride);

我为你设置了一个jsfiddle。您只需插入您的逻辑来计算剩余字段的风险并清理html。

JavaScript

var risk = {
    'none': 0,
    'low': 1,
    'high': 2,
    'abnormal': 3
};
var myRsk = 0;
function getValue(name) {
    return document.getElementsByName(name)[0].value;
}
function calculateRisk() {
    age = getValue('iAge');
    gender = getValue('iGender');
    sbp = getValue('iSBP');
    dbp = getValue('iDBP');
    temp = getValue('iTemp');
    race = getValue('iRace');
    family = getValue('iFamily');
    myRisk = 0;
    myRisk += calculateAge(age);
    myRisk += calculateGender(gender);
    myRisk += calculateSBP(sbp);
    myRisk += calculateDBP(sbp);
    myRisk += calculateTemp(temp);
    myRisk += calculateRace(race);
    myRisk += calculateFamily(family);
    myRisk = parseFloat(myRisk / 21 * 100).toPrecision(4);
    alert('Your Risk = ' + myRisk + '%');
}
function calculateAge(age) {
    val = parseInt(age)
    if (val > 80) return risk['abnormal'];
    else if (val > 60) return risk['high'];
    else if (val > 40) return risk['low'];
    else return parseInt(risk['none']);
}
function calculateGender(gender) {
    return parseInt(risk['low']);
}
function calculateSBP(sbp) {
    return parseInt(risk['low']);
}
function calculateDBP(dbp) {
    return parseInt(risk['low']);
}
function calculateTemp(temp) {
    return parseInt(risk['low']);
}
function calculateRace(race) {
    return parseInt(risk['low']);
}
function calculateFamily(family) {
    return parseInt(risk['low']);
}

<form>
    <div class="item" title="Ages 18 to 39 have a lower risk of cancer than for those over 40.">
        <label>Age</label>
        <input name="iAge" type="text" />
    </div>
    <div class="item" title="Choose your biological gender. Males are more likely to develop lung cancer than females.">
        <label>Gender</label>
        <input name="iGender" type="text" />
    </div>
    <div class="item" title="Low blood pressure is anything below 100. Normal range is 120-130. High blood pressure is over 135.">
        <label>Systolic Blood Pressure</label>
        <input name="iSBP" type="text" />
    </div>
    <div class="item" title="Low blood pressure is anything below 70. Normal range is 80-85. High blood pressure is over 90.">
        <label>Diastolic Blood Pressure</label>
        <input name="iDBP" type="text" />
    </div>
    <div class="item" title="Below 98.6 degrees Fahrenheit/37 degrees Celsius is unhealthy Normal range is at exactly 98.6 degrees/37 degrees Celsius">
        <label>Temperature</label>
        <input name="iTemp" type="text" />
    </div>
    <div class="item" title="African Americans have a higher chance of lung cancer; followed by Caucasians, Asians, Pacific Islanders, Hispanics, and Native Americans have a low percentage.">
        <label>Race</label>
        <input name="iRace" type="text" />
    </div>
    <div class="item" title="Family History of Lung Cancer. Choose Yes if an immediate family member had lung cancer. Note: The Calculator is only applicable for persons without a previous diagnosis of lung cancer.">
        <label>Family</label>
        <input name="iFamily" type="text" />
    </div>
    <input type="button" value="Calculate" onclick="calculateRisk()" />
</form>
CSS

label {
    width: 160px;
    float: left;
}
input[type='text'] {
    vertical-align:middle;
}
.item {
    margin-bottom:1.5em;
    clear:both;
    overflow:hidden;
}