为了账号安全,请及时绑定邮箱和手机立即绑定

未捕获的语法错误:意外的标记“if”和未捕获的引用错误:未定义 berechnung

未捕获的语法错误:意外的标记“if”和未捕获的引用错误:未定义 berechnung

Go
慕姐8265434 2023-08-21 15:08:02
我不知道问题出在哪里,我收到两条错误消息:未捕获的语法错误:意外的标记“if”未捕获的引用错误:berechnung 未定义你知道问题可能是什么吗?我检查了100遍if函数和按钮的参考,但我没有解决方案^^谢谢你!超文本标记语言<body style="background-color:#000000" ><form><p class="titulierung" >Dein Grundbedarf</p><p><label for="geschlecht" id="geschlecht">Geschlecht</label><select name="geschlecht" size="1" id="geschlecht2">    <option value="1"> Männlich </option>    <option value="2"> Weiblich </option></select></p><p><label for="groesse" id="groesse">Grösse</label><input name="groesse" type="number" id="groesse2" placeholder="180"><span class="anhangsel" > cm</span></p><p><label for="gewicht" id="gewicht">Gewicht</label><input name="gewicht" type="number" id="gewicht2" placeholder="80"> <span class="anhangsel" > kg</span></p><p><label for="alter" id="alter">Alter</label><input name="alter" type="number" id="alter2" placeholder="25"> <span class="anhangsel" > Jahre</span></p><p><label for="zielziel" id="zielziel">Ziel</label><select name="zielziel" size="1" id="zielziel2">    <option value="1"> Gewicht halten </option>    <option value="0.85"> Abnehmen </option>    <option value="1.1"> Zunehmen </option></select></p><p class="angabe" ><span class="ausgabe" >Grundumsatz: <p id="GU1" for="GU1" class="ausgabe2" ></p><span class="anhangsel" > kcal</span></span></p></form><form>
查看完整描述

3 回答

?
偶然的你

TA贡献1841条经验 获得超3个赞

您不能if在需要表达式的地方放置语句。您可以使用条件(也称为“三级”)表达式。


var grundumsatz = geschlecht === 1 ?

    Math.round(66.47 + (13.7 * gewicht) + (5 * groesse) - (6.8 * alter)) :

    Math.round(655.1 + (9.6 * gewicht) + (1.8 * groesse) - (4.7 * alter)); 


查看完整回答
反对 回复 2023-08-21
?
撒科打诨

TA贡献1934条经验 获得超2个赞

我还想向您提供两点补充:

  1. 用于const事物实际上是常量,而不是底层域中可变状态的表示(购物车内容、网络连接状态缓存)

  2. 将您的分支提升为命名常量,使您的代码更易于理解(“无幻数”)

const someNamedValue = () =>  Math.round(66.47 + (13.7 * gewicht) + (5 * groesse) - (6.8 * alter))
const someOtherNamedValue = () => Math.round(655.1 + (9.6 * gewicht) + (1.8 * groesse) - (4.7 * alter))

const grundumsatz = geschlecht === 1 ?
    someNamedValue() :
    someOtherNamedValue();


查看完整回答
反对 回复 2023-08-21
?
九州编程

TA贡献1785条经验 获得超4个赞

赋值运算符的右侧不能有 if 语句。


这是一个简单的解决方案。


let grundumsatz = null;

if (geschlecht === 1) { 

    grundumsatz = Math.round(66.47 + (13.7 * gewicht) + (5 * groesse) - (6.8 * alter));

} else {

    grundumsatz = Math.round(655.1 + (9.6 * gewicht) + (1.8 * groesse) - (4.7 * alter)); 

};

可以看到,要设置的变量是在if/else之前声明的,然后我们根据需要进行赋值。


查看完整回答
反对 回复 2023-08-21
  • 3 回答
  • 0 关注
  • 159 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信