Pythagoras Uncaught TypeError: Cannot read property 'value' of null

Pythagoras Uncaught TypeError: Cannot read property 'value' of null

我已经搜索过类似的其他问题,但找不到任何答案。

我是 JavaScript 的新手,我正在尝试制作一个毕达哥拉斯计算器,我有 3 个输入框,你填写 2 个,按一个按钮,它会填写最后一个在答案中,这是我的代码。

HTML:

<div id="theorem">
    <h2>Calculator</h2>
    <input id="a" placeholder="a"/>
    <input id="b" placeholder="b"/>
    <input id="c" placeholder="c"/>
    <button onclick="workOut()">Work out</button>
</div>
<script src="script.js" type="text/javascript"></script>

JavaScript:

function workOut() {
    var a = document.getElementById(a).value;
    var b = document.getElementById(b).value;
    var c = document.getElementById(c).value;

    if (a == "") {
        A(b, c);
    }
    if (b == "") {
        B(c, a);
    }
    if (c == "") {
        C(a, b);
    }
}

function C(sideA, sideB){
    b.innerHTML = Math.sqrt(Math.pow(sideA, 2) + Math.pow(sideB, 2));
}
function B(sideA, sideC){
    b.innerHTML = Math.sqrt(Math.pow(sideC, 2) - Math.pow(sideA, 2));
}
function A(sideB, sideC){
    a.innerHTML = Math.sqrt(Math.pow(sideC, 2) - Math.pow(sideB, 2));
}

每次我 运行 都会收到错误消息

    Uncaught TypeError: Cannot read property 'value' of null
        at workOut
        at HTMLButtonElement.onclick 

再次强调,我对 JavaScript 很陌生,所以请多关照 :) 提前致谢

不确定,但你不是必须写 document.getElementById("a").value 而不是 (a) 吗?