javascript - 如何在 JavaScript 函数中将参数设置为对象

标签 javascript jquery function object

[注:以下所有代码均使用 JavaScript 和 jQuery + jQuery-UI 框架]

我的意思是,通常 JS 函数参数只是变量。所以我们能做的就是这样设置:

function x(parameter1, parameter2, parameter3, etc...) {/* code inside */}

但它并不像我可以使用我设置的所有参数。例如:

function flipCard(front, back, effect, option, duration) {
    $(front).click(function() {
        $(front).hide(effect, option, duration, function(){
            $(back).show(effect, option, duration)
        });
    });
}

你看,option 是我可以使用的一个非常罕见的参数。但总是使用duration,我确实考虑过改变这些参数的位置。然而,似乎我可以永远这样做,所以我考虑使用参数作为对象。我尝试了很多我能想到的方法:

function t(obj = {x,y,z}) {/* code inside */} //Absolutely fail

再试一次:

function t({}) {/* code inside */} //Ok, I give up

你有办法解决这个问题吗?

最佳答案

我想这就是你要问的......

在您的翻页卡中,您必须检查所需的内容是否已通过,如果未通过,则输出错误。

但是,您的代码并不是处理情况的最佳方法......

function flipCard(obj) {
    $(obj.front).click(function() {
        $(obj.front).hide(obj.effect, obj.option, obj.duration, function(){
            $(obj.back).show(obj.effect, obj.option, obj.duration)
        });
    });
}

//Call flipCard with an object
//obviously set your values as needed
flipCard({
  front : undefined,
  back : undefined,
  effect : undefined,
  option : undefined
  duration: undefined
});

关于javascript - 如何在 JavaScript 函数中将参数设置为对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30129208/

相关文章:

javascript - 通过 #id 动态更改窗口位置 - Jquery/Javascript

javascript - 不显示 HTML 类别

jquery - Chrome "Touch Events API"中断滚动

jquery - Mixitup 插件多能复选框

PHP - 一个返回由其他函数回显的内容的函数

javascript - 使用 jQuery 的 $().on ('mouseenter' ,function(){}) 比 $().mouseenter(function(){}) 有优势吗?

javascript - .then() 函数中的 undefined variable

javascript - 字符串转二维数组

c - 尝试从 C 数组中删除元素时出现意外结果

matlab - 如何在 Jupyter Notebook 中编写 MATLAB 函数?