js题解(二)

文章目录

函数传参

将数组 arr 中的元素作为调用函数 fn 的参数

方法一:使用apple(此题建议使用方法一)

javascript 复制代码
function argsAsArray(fn, arr) {
    return fn.apply(this,arr)
}

方法二:使用call

javascript 复制代码
function argsAsArray(fn, arr) {
    return fn.call(this,arr[0],arr[1],arr[2])
}

函数的上下文

方法一:直接将fn挂载到obj对象上

javascript 复制代码
function speak(fn, obj) {
    obj.fn = fn
    return obj.fn()
}

方法二:使用apply

javascript 复制代码
function speak(fn, obj) {
    return fn.apply(obj)
}

方法三:使用call

javascript 复制代码
function speak(fn, obj) {
    return fn.call(obj)
}

方法四:使用bind

javascript 复制代码
function speak(fn, obj) {
    return fn.bind(obj)()
}

返回函数

实现函数 functionFunction,调用之后满足如下条件:

1、返回值为一个函数 f

2、调用返回的函数 f,返回值为按照调用顺序的参数拼接,拼接字符为英文逗号加一个空格,即 ', '

3、所有函数的参数数量为 1,且均为 String 类型

javascript 复制代码
function functionFunction(str) {
    return f = function(arr){
        return str+", "+arr;
    };
     
}

使用 arguments

函数 useArguments 可以接收 1 个及以上的参数。请实现函数 useArguments,返回所有调用参数相加后的结果。本题的测试参数全部为 Number 类型,不需考虑参数转换。

javascript 复制代码
function useArguments() {
    return [...arguments].reduce((a,b)=>a+b)
}
相关推荐
杏花春雨江南6 分钟前
Spring Cloud Gateway 作为一个独立的服务进行部署吗
java·开发语言
GSDjisidi6 分钟前
东京本社招聘 | 财务负责人 & 多个日本IT岗位(Java/C++/Python/AWS 等),IT营业同步招募
java·开发语言·aws
skywalk81637 分钟前
copyparty 是一款使用单个 Python 文件实现的内网文件共享工具,具有跨平台、低资源占用等特点,适合需要本地化文件管理的场景
开发语言·python
BYSJMG12 分钟前
计算机毕设选题:基于Python+MySQL校园美食推荐系统【源码+文档+调试】
大数据·开发语言·python·mysql·django·课程设计·美食
今天不要写bug13 分钟前
基于elementUI实现一个可编辑的表格(简洁版)
前端·javascript·elementui
一只小阿乐16 分钟前
vue-router 的实现原理
前端·javascript·vue.js·路由·vue-router
Zz_waiting.17 分钟前
案例开发 - 日程管理 - 第七期
开发语言·前端·javascript·vue.js·html·路由
writeone18 分钟前
9-10关于JS初学产生的问题
开发语言·javascript·ecmascript
一只小风华~21 分钟前
Vue:事件处理机制详解
前端·javascript·vue.js·typescript·前端框架
索迪迈科技1 小时前
Flink Task线程处理模型:Mailbox
java·大数据·开发语言·数据结构·算法·flink