Mathオブジェクトのtan()メソッドは、タンジェント(正接)を返します。
引数にラジアン単位の角度を指定すると、指定した引数のタンジェント(正接)を返します。
ラジアンとは、弧度法によって表す角度の単位です。
具体的には、半径1の正円から切り出した円弧の長さからその中心角を特定します。
例えば、正円から円弧を1/6だけ切り出せば中心角は60度となります。
これをラジアンで表すと、2π/6 = π/3ラジアンとなります。
JavaScriptでは、円周率πは Math.PI で求められますから、60度をラジアンで表すなら (60/360)*(2*Math.PI) つまり 60*(Math.PI/180) という計算式で求められるということになります。
尚、タンジェントの90度は無限大になる、あるいは、存在しないとされますが、
Math.tan()で90度を指定すると16331239353195370などの数値が返るようです。
Math.tan()では90度以上を指定しない方が良いかもしれません。
<script> document.write(Math.tan(0 * (Math.PI / 180)) + "<br>"); document.write(Math.tan(30 * (Math.PI / 180)) + "<br>"); document.write(Math.tan(45 * (Math.PI / 180)) + "<br>"); document.write(Math.tan(60 * (Math.PI / 180)) + "<br>"); document.write(Math.tan(90 * (Math.PI / 180)) + "<br>"); document.write(Math.tan(180 * (Math.PI / 180)) + "<br>"); document.write(Math.tan(270 * (Math.PI / 180)) + "<br>"); document.write(Math.tan(360 * (Math.PI / 180)) + "<br>"); </script>