四 js Math数学简单使用
//Math是全局的
//Math.PI 数学里的3.1415926....
console.log(Math.PI);
//取随机数
//js提供的随机函数 Math.random() -->[0,1)范围内的数
function random_int(start, end) {
var num = start + (end - start) * Math.random();
//小数---》整数,向下取整 Math.floor()
return Math.floor(num);
}
console.log(random_int(5, 15));
console.log("=======================");
//数学的正弦,余弦,正切
//单位是数学的弧度,而不是度,方向是数学的正方向,逆时针方向
console.log(Math.sin(Math.PI / 4)); //sin 45°
console.log(Math.sin(Math.PI / 6)); //sin 45°
console.log(Math.cos(Math.PI / 6)); //cos 30°
console.log(Math.tan(Math.PI / 4)); //tan 45°
console.log("=======================");
//度[0,360)
//弧度[0,2*PI)
//度转弧度
function degree_to_r(degree) {
//PI-->180°
return (degree / 180) * Math.PI;
}
//弧度转度
function r_to_degree(r) {
return (r / Math.PI) * 180;
}
var r = degree_to_r(90);
console.log(r);
console.log(r_to_degree(r));
console.log("=======================");
//sin 30°= 0.5 ,asin(0.5)对应多少度呢
//asin(0.5)算出的是弧度单位
//范围在[-2PI,2PI]
r = Math.asin(0.5);
console.log(Math.floor(r_to_degree(r)));
r = Math.acos(0.5)
console.log(Math.floor(r_to_degree(r)));
console.log("=======================");
//返回一个坐标对应的角度,范围[-PI,PI]
//Math.atan2(y,x);
r = Math.atan2(-1, 1);
console.log(r_to_degree(r));
r = Math.atan2(0, -1);
console.log(r_to_degree(r));
console.log("=======================");
//Math.sqrt 开平方
console.log(Math.sqrt(16));//16的平方根
console.log(Math.sqrt(2)); //2的平方根
console.log("=======================");
//计算两点之间的距离
function vector_distance(lhs_x, lhs_y, rhs_x, rhs_y) {
var len = (lhs_x - rhs_x) * (lhs_x - rhs_x) + (lhs_y - rhs_y) * (lhs_y - rhs_y);
return Math.sqrt(len);
}
console.log(vector_distance(0, 0, 1, 1));
console.log("=======================");
四 js Math数学简单使用的更多相关文章
- JS之路——Math数学对象
Math数学对象 ceil(数值)大于或等于该数的最小整数 floor(数值)小于或等于该数的最大整数 min(数值1,数值2)返回最小值 max(数值1,数值2)返回最大值 pow(数值1,数值2) ...
- vue—你必须知道的 js数据类型 前端学习 CSS 居中 事件委托和this 让js调试更简单—console AMD && CMD 模式识别课程笔记(一) web攻击 web安全之XSS JSONP && CORS css 定位 react小结
vue—你必须知道的 目录 更多总结 猛戳这里 属性与方法 语法 计算属性 特殊属性 vue 样式绑定 vue事件处理器 表单控件绑定 父子组件通信 过渡效果 vue经验总结 javascript ...
- 分享:计算机图形学期末作业!!利用WebGL的第三方库three.js写一个简单的网页版“我的世界小游戏”
这几天一直在忙着期末考试,所以一直没有更新我的博客,今天刚把我的期末作业完成了,心情澎湃,所以晚上不管怎么样,我也要写一篇博客纪念一下我上课都没有听,还是通过强大的度娘完成了我的作业的经历.(当然作业 ...
- 使用js Math.random()函数生成n到m间的随机数字
何使用js生成n到m间的随机数字,主要目的是为后期的js生成验证码做准备,Math.random()函数返回0和1之间的伪随机数 摘要: 本文讲解如何使用js生成n到m间的随机数字,主要目的是为后 ...
- [转]九个Console命令,让js调试更简单
转自:九个Console命令,让js调试更简单 一.显示信息的命令 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <!DOCTYPE html> <html ...
- JS实现一个简单的计算器
使用JS完成一个简单的计算器功能.实现2个输入框中输入整数后,点击第三个输入框能给出2个整数的加减乘除.效果如上: 第一步: 创建构建运算函数count(). 第二步: 获取两个输入框中的值和获取选择 ...
- JS+html实现简单的飞机大战
摘要:通过原生的js+html实现简单的飞机大战小游戏效果,如图所示: 实现代码如下: 1.自己的飞机实现 飞机html: <!DOCTYPE html> <html lang=&q ...
- js实现一个简单钟表动画(javascript+html5 canvas)
第一次在博客园注册发博.有一次去人家单位开标,看到开标网站上有个钟表动画,一时兴起,就写了个简单的钟表动画. 用js和html5 canvas对象实现一个简单钟表程序 主要用到的就是h5的canvas ...
- [JS]Math.random()
参考网址:http://www.soulteary.com/2014/07/05/js-math-random-trick.html [JS]Math.random()的二三事 看到题目,如果大家平时 ...
随机推荐
- git 将本地仓库提交至github
-or create a new repository on the command line touch README.md git init git add README.md git commi ...
- IO密集型 计算密集型
参考:https://www.cnblogs.com/zhangyux/p/6195860.html 参考:廖雪峰 协程 gevent IO密集型任务指的是磁盘IO或者网络IO占主要的任务,计算量很小 ...
- 转:ORACLE 中ROWNUM用法总结!
oracle 分页查询语句:select * from (select u.*,rownum r from (select * from userifno) u where rownum<大值) ...
- 九九乘法表python3写入文件中
写入文件代码如下: with open("e:\\test01.txt","w+",encoding="utf-8") as wq: for ...
- java 线程 (一) Thread
package cn.sasa.demo1; public class Test { public static void main(String[] args) throws Interrupted ...
- CF720A Closing ceremony 贪心
正解:贪心 解题报告: 传送门! 先考虑如果只有一列怎么搞?那就肯定是尽量走到最远的地方 然后用点儿类似的思想,现在考虑有两列的情况QAQ 为了方便表述,这里给每个位置两个值,a表示离一号入口的距离, ...
- 【PyQt5-Qt Designer】Qt 的标准对话框总结
PyQt5 各种弹出对话框的总结 忙碌了两天才总结完,深刻体会到 “编程在实践中才能领悟更深”,后续有了更多的 理解继续来补充... 效果如下: 参考: https://www.cnblogs.com ...
- Linux中的轻量级进程
在Linux中,轻量级进程可以是进程,也可以是线程.我们所说的线程,在Linux中,其实是轻量级进程之间共享代码段,文件描述符,信号处理,全局变量时: 如果不共享,就是我们所说的进程. 进程是资源管理 ...
- JavaScript学习笔记--语法
代码风格: 每句结尾不用加分号: 单行注释用//,多行注释用/*...需要注释掉的代码....*/ 严格区分大小写 优雅的代码需要注意锁进 基础知识: Number:JavaScript不区分整数和浮 ...
- SpringBoot-整合lombok
添加lombok依赖 <dependency> <groupId>org.projectlombok</groupId> <artifactId>lom ...