Reactjs 未在React中填充状态数组

Reactjs 未在React中填充状态数组,reactjs,state,Reactjs,State,我试图做一个简单的操作,在React中创建一个数组,并将其设置为一个state对象。有人知道为什么state.countState为每个数组元素填充“null”吗?我想我错过了一些很简单的东西 class DisplaySort extends Component { constructor(props) { super(props); this.state = { array: [5, 4, 3, 2, 1], countState: [],

我试图做一个简单的操作,在React中创建一个数组,并将其设置为一个state对象。有人知道为什么state.countState为每个数组元素填充“null”吗?我想我错过了一些很简单的东西

class DisplaySort extends Component {
  constructor(props) {
    super(props);
    this.state = {
      array: [5, 4, 3, 2, 1],
      countState: [],
    };
    this.sort = this.sort.bind(this);
  }

 render() {
    return (
        <div className="buttons">
          <button onClick={this.sort}>Sort</button>
        </div>
    );
  }

sort(e) {
    let data = this.state.array;
    let arr = [...data];
    let min = Math.min(...arr);
    let max = Math.max(...arr);

    let i = min,
      j = 0,
      len = arr.length,
      count = [];

    for (i; i <= max; i++) {
      count[i] = 0;
    }

    for (i = 0; i < len; i++) {
      count[arr[i]] += 1;
    }

    this.setState({ countState: count });

};
class DisplaySort扩展组件{
建造师(道具){
超级(道具);
此.state={
数组:[5,4,3,2,1],
国家:[],
};
this.sort=this.sort.bind(this);
}
render(){
返回(
分类
);
}
排序(e){
让data=this.state.array;
设arr=[…数据];
设min=Math.min(…arr);
设max=Math.max(…arr);
让i=min,
j=0,
len=arr.长度,
计数=[];

for(i;i
Math.min
Math.max
不将数组作为参数

可以展开数组并传递值:

constbla=[1,0,-1];
console.log(Math.min(bla))//日志

console.log(Math.min(…bla))//logs-1
Math.min([5,4,3,2,1])
返回
NaN
sort
应该做什么?它似乎没有对数组进行排序。为了简单起见,这是我的应用程序的一个截断版本。我已经将(或至少是一个)问题缩小为返回一个“null”数组对于count,即使在添加扩展运算符后,count数组仍填充“null”elements@Jerry123更新了我的答案,你有一个逻辑错误。