js随机从数组中取数输出结果是undefined

用js随机从数组中取数,让一个图旋转这个数的度数。
结果是图旋转了相应度数,但输出这个数确实undefined。这是什么问题?

for (var i = 0; i < 90; i++) {
        if (i < 15) {
            angleR.push("0");
        } else if (i < 30) {
            angleR.push("60");
        } else if (i < 45) {
            angleR.push("120");
        } else if (i < 60) {
            angleR.push("180");
        } else if (i < 75) {
            angleR.push("240");
        } else if (i < 90) {
            angleR.push("300");
        }
    }
rad = angleR[Math.round(Math.random() * angleR.length)];
        R.style.transform = "rotate(" + rad + "deg)";
        radR = angleR.indexOf(rad);
        angleR.splice(radR, 1);
document.getElementById("q").innerHTML=rad;

img


    <div id="R">R</div>
    <div id="q"></div>

    <script type="text/javascript">
        // 代码要严谨规范
        var angleR = new Array();
        for (var i = 0; i < 90; i++) {
            if (i < 15) {
                angleR.push("0");
            } else if (i < 30) {
                angleR.push("60");
            } else if (i < 45) {
                angleR.push("120");
            } else if (i < 60) {
                angleR.push("180");
            } else if (i < 75) {
                angleR.push("240");
            } else if (i < 90) {
                angleR.push("300");
            }
        }
        var rad = angleR[Math.round(Math.random() * angleR.length)];
        var R = document.getElementById('R');
        R.style.transform = "rotate(" + rad + "deg)";
        var radR = angleR.indexOf(rad);
        angleR.splice(radR, 1);
        document.getElementById("q").innerHTML = rad;
    </script>