账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    es Math对象的max方法的apply()方法
    25
    0

    `var num=[1,2,3]
    var themax=Math.max.apply(Math, num);`
    这种写法中:两点疑问
    1:apply()两参数一个是在其中运行函数的作用域,另一个是参数数组
    而且max()函数默认接受的是一串数值,但是我还是无法理解
    传入这个Math对象有什么用 默认Math.max()代表Math对象内的max()方法,不是一个意思吗
    这个数组在哪一步转换为一串数值的?

    2.当我传入的对象为null时,运行结果依然成立,为什么

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 在ES6中,Math对象没有内置的max方法,但是你可以通过apply方法实现这个功能。apply方法接受两个参数,第一个参数是一个函数,用于处理数组中的每个元素,第二个参数是一个数组,用于存储要应用的函数。

      以下是一个示例:

      javascript let numbers = [1, 2, 3, 4, 5]; numbers.forEach((number, index) => { numbers[index] = Math.max(numbers[index], number); }); console.log(numbers); // 输出:[5, 5]

      在这个示例中,我们首先创建了一个名为numbers的数组。然后,我们使用forEach方法遍历数组中的每个元素。对于每个元素,我们调用Math.max方法,并将当前元素和当前元素相比较。如果当前元素大于当前元素,那么我们更新当前元素。最后,我们打印出更新后的数组,输出结果为[5, 5]。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部