Javascript 内置对象——Math对象

如何遍历对象:
语法格式:

for (变量 in 对象){
}

ex:

var obj={
	name:'小黑',
	age:12,
	sex:'男',
	fn:function(){
	
		}
}


for (var k in obj){
	console.log(k);		//这里k是变量输出得到的结果是属性名
	console.log(obj[k]);	//这里输出得到的结果为属性名所对应的值
}

效果:
在这里插入图片描述
接下来进入正题!

Math数学对象:
Math数学对象不是一个构造函数,所以我们不需要new来调用,而是直接使用里面的属性和方法即可
他具有数学常数和函数的属性和方法,跟数学相关的运算(求绝对值、取整、最大值等)

语法作用
Math.PI圆周率
Math.floor()向下取整
Math.ceil()向上取整
Math.round()四舍五入 就近取整
Math.abs()取绝对值
Math.max()求最大值
Math.min()求最小值

1、Math.floor()

console.log(Math.floor(1.4));
console.log(Math.floor(1.9)); 

在这里插入图片描述
他们两个的值都为1,是因为Math.floor() 是向下取整,不管你的小数位是多少直接一刀斩断,后面的就都不要了,所以这两个显示都为1

2、Math.ceil()

console.log(Math.ceil(1.4));
console.log(Math.ceil(1.9)); 

在这里插入图片描述
这个Math.ceil() ,跟上面的大不一样,上面的是怎么也不让你上去,这个呢是怎么也不让你下来,哪怕你是0.1也让你变成1,魔法的力量就是这么强大

3、Math.round()

console.log(Math.round(1.4));
console.log(Math.round(1.5));
console.log(Math.round(-1.5));

在这里插入图片描述
-1.5为什么就成了-1呢? 这里就要关注一下这个.5了,因为这个.5特殊,他会往大了取,因为-1和-2相比-1比-2大,所以这个.5就认-1做大哥了

生成一个随机数:Math.random()
这个方法里面是不跟参数的

console.log(Math.random());

在这里插入图片描述
在这里插入图片描述
他会随机生成一个0~1之间的数字,但是呢好像也没有地方可以用到,这个时候我们可以采用下面这个公式:

Math.floor(Math.random() * (max - min +1)) + min; 
//我们可以用函数封装起来用的是或方便


function getRandom(min,max){
	return Math.floor(Math.random()*(max-min+1))+min;
}
console.log(getRandom(1,10));

在这里插入图片描述
在这里插入图片描述
这样就可以自己输入一个最大值一个最小值来随机生成数了,这样是不是用处就很多了呢 (随机生成的数字包括最大值和最小值)

总和上面所学的我们来封装一个自己的数学对象,里面有PI的值、求最大值&最小值

    var myMath={
        PI:3.1415926,
        max:function(){
            var max=arguments[0];
            for (var i=1;i<arguments.length;i++){
                if (arguments[i]>max){
                    max=arguments[i];
                }
            }
            return max;
        },
        min:function(){
            var min=arguments[0];
            for (var i=1;i<arguments.length;i++){
                if (arguments[i]<min){
                    min=arguments[i];
                }
            }
            return min;
        }
    }
    console.log(myMath.max(1,2,5,6,4,8));
    console.log(myMath.PI);
    console.log(myMath.min(1,6,8,23,0,5,-1,-5,-6));

在这里插入图片描述
综上所学来做一个猜数字的交互界面

    function getRandom(min,max){
        return Math.floor(Math.random()*(max-min+1))+min;
    }
    var random=getRandom(1,10);
    while (true){
        var num =prompt('请输入一个1~10之间的数字');
        if (num>random){
            alert('猜大了');
        }
        else if (num<random){
            alert('猜小了');
        }
        else{
            alert('恭喜您猜对了');
            break;
        }
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于Tensorflow、OpenAI搭建的强化学习框架,训练机器自动操盘 强化学习(Reinforcement Learning, RL),又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一。它主要用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。强化学习的特点在于没有监督数据,只有奖励信号。 强化学习的常见模型是标准的马尔可夫决策过程(Markov Decision Process, MDP)。按给定条件,强化学习可分为基于模式的强化学习(model-based RL)和无模式强化学习(model-free RL),以及主动强化学习(active RL)和被动强化学习(passive RL)。强化学习的变体包括逆向强化学习、阶层强化学习和部分可观测系统的强化学习。求解强化学习问题所使用的算法可分为策略搜索算法和值函数(value function)算法两类。 强化学习理论受到行为主义心理学启发,侧重在线学习并试图在探索-利用(exploration-exploitation)间保持平衡。不同于监督学习和非监督学习,强化学习不要求预先给定任何数据,而是通过接收环境对动作的奖励(反馈)获得学习信息并更新模型参数。强化学习问题在信息论、博弈论、自动控制等领域有得到讨论,被用于解释有限理性条件下的平衡态、设计推荐系统和机器人交互系统。一些复杂的强化学习算法在一定程度上具备解决复杂问题的通用智能,可以在围棋和电子游戏中达到人类水平。 强化学习在工程领域的应用也相当广泛。例如,Facebook提出了开源强化学习平台Horizon,该平台利用强化学习来优化大规模生产系统。在医疗保健领域,RL系统能够为患者提供治疗策略,该系统能够利用以往的经验找到最优的策略,而无需生物系统的数学模型等先验信息,这使得基于RL的系统具有更广泛的适用性。 总的来说,强化学习是一种通过智能体与环境交互,以最大化累积奖励为目标的学习过程。它在许多领域都展现出了强大的应用潜力。
尝试用基于值函数逼近的强化学习方法玩经典的马里奥游戏,取得了一定成果 强化学习(Reinforcement Learning, RL),又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一。它主要用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。强化学习的特点在于没有监督数据,只有奖励信号。 强化学习的常见模型是标准的马尔可夫决策过程(Markov Decision Process, MDP)。按给定条件,强化学习可分为基于模式的强化学习(model-based RL)和无模式强化学习(model-free RL),以及主动强化学习(active RL)和被动强化学习(passive RL)。强化学习的变体包括逆向强化学习、阶层强化学习和部分可观测系统的强化学习。求解强化学习问题所使用的算法可分为策略搜索算法和值函数(value function)算法两类。 强化学习理论受到行为主义心理学启发,侧重在线学习并试图在探索-利用(exploration-exploitation)间保持平衡。不同于监督学习和非监督学习,强化学习不要求预先给定任何数据,而是通过接收环境对动作的奖励(反馈)获得学习信息并更新模型参数。强化学习问题在信息论、博弈论、自动控制等领域有得到讨论,被用于解释有限理性条件下的平衡态、设计推荐系统和机器人交互系统。一些复杂的强化学习算法在一定程度上具备解决复杂问题的通用智能,可以在围棋和电子游戏中达到人类水平。 强化学习在工程领域的应用也相当广泛。例如,Facebook提出了开源强化学习平台Horizon,该平台利用强化学习来优化大规模生产系统。在医疗保健领域,RL系统能够为患者提供治疗策略,该系统能够利用以往的经验找到最优的策略,而无需生物系统的数学模型等先验信息,这使得基于RL的系统具有更广泛的适用性。 总的来说,强化学习是一种通过智能体与环境交互,以最大化累积奖励为目标的学习过程。它在许多领域都展现出了强大的应用潜力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值