JavaScript数组映射函数如何确定当前项的长度和索引

标签 javascript jquery html

我有一个用

生成表格行的 js 片段

td如下

                    var cols = this.props.cols;
                    data = this.state.data

                    return data.map(function (item) {
                        var cells = cols.map(function (colData) {
                            console.log(colData);
                            return <td>{item[colData.key]}</td>;
                        });


                        return <tr key={item.Id }>{cells}</tr>;
                    });

我想确定最后一列并添加一个特定 td 的按钮 如何获取 cols.map(function(coldata) 中单元格的长度。嗯,不确定是否能够通过这种方法完成它

最佳答案

像这样的东西会起作用。正如 yaycmyk 提到的,您的 map 函数可以接受 3 个参数。

 1. the iterated item
 2. the index of the item
 3. the array that is being iterated on.

我只是比较索引和长度 - 1

                return data.map(function (item) {
                    var cells = cols.map(function (colData, idx, arr) {
                         return (idx === arr.length -1)
                               ? <td><button /></td>
                               : <td>{item[colData.key]}</td>;
                    });


                    return <tr key={item.Id }>{cells}</tr>;
                });

关于JavaScript数组映射函数如何确定当前项的长度和索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38627560/

相关文章:

javascript - Highcharts 未在辅助轴上正确绘制系列

javascript - 多个类的 jquery 选择器

javascript - .each() 将属性添加到从 jquery 到 js 的父级

javascript - 如何通过 JS 嵌入代码嵌入 HTML

javascript - 当结果获取 JSON 时,如何在 JQuery 中编写 HTML 代码

javascript - 如何使用jquery从选项中删除 "selected"属性

javascript - 使用python获取firefox保存的cookie

c# - 解析 HTML "Visually"

javascript - 可以使用 jquery .ajax() 调用解析包含 xml 数据的 javascript 对象吗?

javascript - jquery 在选择相关单选按钮时显示/隐藏 div