账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    JavaScript 参数传递的是另一个函数、如何执行?
    15
    0

    示例:

    
    var item = {
        a: function () {},
        b: function () {},
        c: function () {}
    }
    
    function test(type) {
        // item.type()
    }
    

    以问:

    多次if判断type或用switch,然后去调用itme里的方法,这种不适合我的业务场景,因为itme对象后续会扩展。
    
    假设我已经统一对参数进行判断了,确定itme中有type这个方法,我应该如何调用它呢?用户可能会传abcd..N方法名。
    

    补充:由于是严格模式的原因,eval函数不能使用了。

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 一生孤注 普通会员 1楼

      在JavaScript中,参数传递是一种常见的数据传递方式,它们可以是函数、对象、数组等。参数传递可以通过以下方式执行:

      1. 函数参数:

      函数参数是在函数定义时,将数据作为参数传递给函数的。例如:

      ```javascript function add(a, b) { return a + b; }

      console.log(add(2, 3)); // 输出 5 ```

      在上面的例子中,add函数接收两个参数a和b,然后返回它们的和。

      1. 对象属性:

      对象属性是将数据作为对象属性传递给对象的。例如:

      ```javascript let person = { name: 'John Doe', age: 30 };

      console.log(person.name); // 输出 'John Doe' ```

      在上面的例子中,person对象有两个属性name和age,它们都是传递给person对象的。

      1. 数组元素:

      数组元素是将数据作为数组元素传递给数组的。例如:

      ```javascript let fruits = ['apple', 'banana', 'cherry'];

      console.log(fruits[0]); // 输出 'apple' ```

      在上面的例子中,fruits数组的第一个元素是传递给fruits数组的,它的值是'apple'。

      1. 使用apply、call、bind方法:

      JavaScript提供了一些方法(apply、call、bind)可以将函数应用到其他函数上,从而实现参数传递。例如:

      ```javascript function add(a, b) { return a + b; }

      let result = add.apply(null, arguments); // 这里使用apply方法,将apply方法和apply对象作为参数传递给add函数

      console.log(result); // 输出 5 ```

      在上面的例子中,add函数被应用到apply方法中,apply方法接受一个可选的上下文对象和一个数组作为参数,然后将apply方法和apply对象作为参数传递给add函数。

      总的来说,JavaScript参数传递是一种强大的数据传递方式,它允许我们在函数、对象、数组等中传递数据,从而使我们的代码更加灵活和可扩展。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部