【问题标题】:Where are the parameters coming from in my updateState reactjs function?我的 updateState reactjs 函数中的参数来自哪里?
【发布时间】:2016-07-26 04:25:05
【问题描述】:

我刚刚开始使用 fullstack.io 书开始 JS 和 React。

书中有一段代码:

updateState: function () {
    const products = Data.sort((a, b) => {
        return b.votes - a.votes;
}

现在每次在代码示例中调用 updateState 函数时,都没有传入任何参数……那么如何填充 Data.sort 中使用的“a”和“b”参数?

谢谢。

【问题讨论】:

    标签: javascript function reactjs parameters


    【解决方案1】:

    我不确定Data 是什么,但我们假设它是一个数组。

    Array.prototype.sort 是一个接受比较器回调函数(a, b) => { ... } 的函数。
    该函数比较元素ab
    如果函数返回小于 0 的数字,则 a 位于 b 之前(升序)。
    否则ba 之前(降序)。

    关键点是ab 在后台被sort 传递。您只需要担心提供确定排序顺序的回调。

    例如:

    let arr = [2, 4, 7, 1]
    
    arr.sort((a, b) => a - b) // => [1, 2, 4, 7]
    
    arr.sort((a, b) => b - a) // => [7, 4, 2, 1]
    

    【讨论】:

    • 非常感谢您的解释。这对我来说很清楚。只是不确定这些值来自哪里。是的,你的假设是正确的——它是一个 JS 数组。感谢您的宝贵时间。
    猜你喜欢
    • 2016-04-10
    • 2022-10-02
    • 2020-03-27
    • 2021-09-12
    • 1970-01-01
    • 1970-01-01
    • 2016-11-15
    • 2021-10-27
    相关资源
    最近更新 更多