Untitled

 avatar
unknown
plain_text
7 days ago
1.4 kB
5
Indexable
import React, { useState, useEffect } from "react";
import useLocalStorage from "../hooks/useLocalStorage";
import Editor from "./Editor";

function App() {
  const [rowNum, setRowNum] = useState(0);
  const [colNum, setColNum] = useState(0);

  let referenceList = Array.from({ length: rowNum }, () =>
    Array(colNum).fill(0)
  );

  let num = 1;

  for (let i = 0; i < rowNum; i++) {
    referenceList[i][0] = num++;
  }

  for (let j = 1; j < colNum; j++) {
    if (j % 2 === 0) {
      for (let i = 0; i < rowNum; i++) {
        referenceList[i][j] = num++;
      }
    } else {
      for (let i = rowNum - 1; i >= 0; i--) {
        referenceList[i][j] = num++;
      }
    }
  }

  console.log(referenceList);

  return (
    <div>
      <h1>Hello</h1>
      <input
        type="number"
        value={rowNum}
        onChange={(e) => setRowNum(e.target.value)}
      />
      <input
        type="number"
        value={colNum}
        onChange={(e) => setColNum(e.target.value)}
      />
      {/* <br /> */}

      <table>
        <thead></thead>
        <tbody>
          {referenceList.map((row, rowIndex) => {
            return <tr key={rowIndex}>
              {row.map((col, colIndex) => {
                return <td key="{colIndex}">{col}</td>;
              })}
            </tr>;
          })}
        </tbody>
      </table>
    </div>
  );
}

export default App;
Leave a Comment