首页 > 代码库 > Javascript apply的巧妙用法
Javascript apply的巧妙用法
Math.max 可以实现得到数组中最大的一项
var array = [1,2,3,4,5];var max = Math.max.apply(null, array);console.log(max); // 5
调用的时候第一个参数给了一个null,这个是因为没有对象去调用这个方法,只需要用这个方法帮助运算,得到返回的结果就行,所以直接传递了一个null过去。
Math.min 可以实现得到数组中最小的一项
var array = [1,2,3,4,5];var min= Math.min.apply(null, array);console.log(min); // 1
在原生对象上面添加max与min方法
那就会需要用到原生对象方法Object.defineProperty()方法会直接在一个对象上定义一个新属性,或者修改一个对象的现有属性, 并返回这个对象。
在原生对象上面添加方法,for循环也会查找不到
Object.defineProperty(Array.prototype, ‘max‘, { writable: false, enumerable: false, configurable: true, value: function () { return Math.max.apply(null, this); } }); Object.defineProperty(Array.prototype, ‘min‘, { writable: false, enumerable: false, configurable: true, value: function () { return Math.min.apply(null, this); } });
如何使用呢,直接在数组上调用即可
var arr = [54,545,2165,545,56]; console.log(arr.max()); console.log(arr.min());
Javascript apply的巧妙用法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。