扫码关注官方订阅号
var arr = [3, 10, 2, 100]; var max = Math.max.apply(Math, arr); console.log(max); // 100
有大神能详细讲解一下吗,小白弄不懂
如何改变指针是标准定的,apply和call就是用来改变作用域的
call与apply的区别在于前者的参数是一个一个的,比如:
var max = Math.max; var a = max.call(Math,1,2,5,8); alert(a) //8
var max=Math.max var a=max.apply(Math,[1,2,5,8]); alert(a) //8
可以看看这篇,可能会有一定的帮助,谢谢!
Math.max方法可以接受多个参数,现在你这是将参数列表组成了一个数组,Math.max本身是不能接收一个数组的,现在需要一个能将数组转换为参数列表的一个工具,这个工具就是apply
Math.max
var arr = [3, 10, 2, 100]; var max = Math.max.apply(Math, arr);
可以翻译为
Math.max(3, 10, 2, 100)
apply是怎么改变this的??这个得看源码了吧..就像
Array.prorotype.forEach(function(){ this....//你是想问这个this为什么会绑到调用数组的身上??这个好难。。 })
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
如何改变指针是标准定的,apply和call就是用来改变作用域的
call与apply的区别在于前者的参数是一个一个的,比如:
可以看看这篇,可能会有一定的帮助,谢谢!
Math.max方法可以接受多个参数,现在你这是将参数列表组成了一个数组,Math.max本身是不能接收一个数组的,现在需要一个能将数组转换为参数列表的一个工具,这个工具就是apply可以翻译为
apply是怎么改变this的??这个得看源码了吧..就像