将参数添加到包含默认参数的函数

时间:2018-05-03 15:07:02

标签: javascript

我的代码如下:

{
    headerName: "A",
    valueGetter: 'data.a',
    field: 'a',
    cellRenderer:ACellRenderer,
    width: 100,
    filter: 'number'
}

而且:

function ACellRenderer(params){
    if(params.data && params.data.a){
        // Do something
    }
}

我不明白params参数的来源,因为我只调用ACellRenderer而没有任何参数。

我还想通过传递给我的param调用ACellRenderer,显然这样做:cellRenderer:ACellRenderer(myParam)无效。

2 个答案:

答案 0 :(得分:0)

我很难从问题的方式理解你的问题,但也许你想要这样做?

{
    headerName: "A",
    valueGetter: 'data.a',
    field: 'a',
    cellRenderer:function(){ACellRenderer(<put your parameter here>);},
    width: 100,
    filter: 'number'
}

另外,为了将来参考,常用术语是argument,而不是param。并不重要,但它会让其他Javascript程序员更好地理解它。

答案 1 :(得分:0)

这:

var Obj = {
    headerName: "A",
    valueGetter: 'data.a',
    field: 'a',
    cellRenderer:ACellRenderer,
    width: 100,
    filter: 'number'
}

只是对象的定义。

这一行:cellRenderer:ACellRenderer将函数存储在特定变量Basic JS中,如下所示:

var func = function(){}

现在调用它会像:

Obj['cellRenderer']();

OR

Obj.cellRenderer();

该函数需要一个对象作为参数,我不知道这是多么令人困惑。