列表

详情


FED63. 二次封装函数

描述

实现函数 partialUsingArguments,调用之后满足如下条件:
1、返回一个函数 result
2、调用 result 之后,返回的结果与调用函数 fn 的结果一致
3、fn 的调用参数为 partialUsingArguments 的第一个参数之后的全部参数以及 result 的调用参数

示例1

输入:

输出:

原站题解

HTML/CSS/JavaScript 解法, 执行用时: 859ms, 内存消耗: 77836KB, 提交时间: 2020-12-24

{"css":"","js":"function partialUsingArguments(fn) {\n    var args = Array.prototype.slice.call(arguments,1);\n    return function(){\n        var args2 = Array.prototype.slice.call(arguments,0);\n        return fn.apply(this,args.concat(args2))\n    }\n}","html":"","libs":[]}

HTML/CSS/JavaScript 解法, 执行用时: 859ms, 内存消耗: 77904KB, 提交时间: 2020-11-23

{"css":"","js":"function partialUsingArguments(fn) {\n    var args = [].slice.call(arguments,1);\n    var result = function(){\n        return fn.apply(null,args.concat([].slice.call(arguments)));\n    }\n    return result;\n}","html":"","libs":[]}

HTML/CSS/JavaScript 解法, 执行用时: 862ms, 内存消耗: 77772KB, 提交时间: 2020-11-23

{"css":"","js":"function partialUsingArguments(fn) {\n     //先获取p函数第一个参数之后的全部参数\n     var args = Array.prototype.slice.call(arguments,1);\n     //声明result函数\n     var result = function(){\n         //使用concat合并两个或多个数组中的元素\n         return fn.apply(null, args.concat([].slice.call(arguments)));\n     }\n     return result;\n }","html":"","libs":[]}

HTML/CSS/JavaScript 解法, 执行用时: 862ms, 内存消耗: 77820KB, 提交时间: 2020-12-28

{"css":"","js":"function partialUsingArguments(fn) {\n     //先获取p函数第一个参数之后的全部参数\n     var args = Array.prototype.slice.call(arguments,1);\n     //声明result函数\n     var result = function(){\n         //使用concat合并两个或多个数组中的元素\n         return fn.apply(null, args.concat([].slice.call(arguments)));\n     }\n     return result;\n}","html":"","libs":[]}

HTML/CSS/JavaScript 解法, 执行用时: 863ms, 内存消耗: 77776KB, 提交时间: 2020-12-21

{"css":"","js":"function partialUsingArguments(fn) {\n    var arr = [].slice.call(arguments, 1);\n    return result = function(){\n        return fn.apply(this, arr.concat([].slice.call(arguments)) );\n    };\n}","html":"","libs":[]}

上一题