分享js中apply和Math.max()函数的使用实例
程序员文章站
2022-10-27 15:20:46
分享js中apply和math.max()函数的使用实例
var arr = [1,4,5,2,9];
console.log(math.max.apply(null,arr));
这里输出9...
分享js中apply和math.max()函数的使用实例
var arr = [1,4,5,2,9]; console.log(math.max.apply(null,arr));
这里输出9,这里做出简单的解释:
math.max()方法,支持传递多个参数,比如:math.max(1,4,5,2,9)
但是它不支持直接传递一个数组作为参数,比如:math.max(new array(1,4,5,2,9))。
function.apply()是js的一个oop特性,一般用来模拟继承和扩展this的用途,对于上面这段代码,可以这样去理解:
xxx.apply是一个调用函数的方法,其参数为:apply(function, args),
function为要调用的方法,args是参数列表,当function为null时,默认为上文,即
math.max.apply(null, arr)
可认为是 apply(math.max, arr)
然后,arr是一个参数列表,对于max方法,其参数是若干个数,即
math.max(a, b, c, d, ...)
当使用apply时,把所有参数加入到一个数组中,即
arr = [a, b, c, d, ...]
代入到原式,
math.max.apply(null, [a, b, c, d, ...])
实际上等同于
math.max(a, b, c, d, ...)
在此处,使用apply的优点是在部分js引擎中提升性能。
上一篇: C++中关于map用法的知识详解
下一篇: 浏览器友好的变量输出
推荐阅读
-
Python中的startswith和endswith函数使用实例
-
Python中函数的多种格式和使用实例及小技巧
-
js中apply和Math.max()函数的问题及区别介绍
-
OpenCV中的新函数connectedComponentsWithStats使用(python和c++实例)
-
js中apply()和call()的区别与用法实例分析
-
使用JS简单实现apply、call和bind方法的实例代码
-
分享js中apply和Math.max()函数的使用实例
-
使用JS简单实现apply、call和bind方法的实例代码
-
C++中main函数中参数argc和argv的使用实例
-
node.js中stream流中可读流和可写流的实现与使用方法实例分析