js请问一个问题,就是html中onclick除了行内js 的样式还有什么方法让他调用js

就是说可以让onclick点击后执行js里面的程序,而不是用行内触发

    <script>
        var a 
      
        var a = parseInt(10*Math.random())
            document.write(a)
          if( a==6||a==2){
            alert("恭喜你抽到二等奖")
        }else if(a==8){
            alert("恭喜抽到一等奖")
        }else{
            alert("很遗憾,没有中奖")
        }
    </script>
<body>
<div>
        <input type="button" value="开始抽奖" 
         onclick="script: a = parseInt(10*Math.random());
        script:if(a==6||a==2)
        {
            alert('恭喜你抽到二等奖')
        }else if(a==8){
            alert('恭喜抽到一等奖')
        }else{
            alert('很遗憾,没有中奖')
        };">
    </div>
</body>



    <div>
```javascript
    <script>
        function luckDraw() {
            var a 
      
        var a = parseInt(10*Math.random())
            document.write(a)
          if( a==6||a==2){
            alert("恭喜你抽到二等奖")
        }else if(a==8){
            alert("恭喜抽到一等奖")
        }else{
            alert("很遗憾,没有中奖")
        }
        }
    </script>
 
    <input type="button" value="开始抽奖" 
     onclick="luckDraw();">
</div>

可以用document.getElementById(id).onclick


    <input type="button" value="开始抽奖" id="btn" />
document.getElementById("btn").onclick=function(){
        var a = parseInt(10*Math.random())
            document.write(a)
          if( a==6||a==2){
            alert("恭喜你抽到二等奖")
        }else if(a==8){
            alert("恭喜抽到一等奖")
        }else{
            alert("很遗憾,没有中奖")
        }

}

先不说问题,script:a 这是什么语法,是什么意思?