JS Array.prototype.split() 忽略第一个字符

JS Array.prototype.split() ignores the first character

我目前正在进行手动清理,formates/fixes 写入日期 在这种格式 0210199802/10/1998 (例如)。 为此,我想将任何书面输入分成更小的部分 (0210=> [[0],[2],[1],[0]]) 我下面的方法总是忽略第一个写入的字符。

import React, { useState } from "react";
import "./styles.css";

export default function App() {
  const [state, setState] = useState("");

  const handleInput = (e) => {
    setState(e.target.value);
    const partChars = e.target.value.split('');
    console.log(partChars);

  };

  return (
    <div className="App">
      <input onKeyPress={handleInput} defaultValue={state} />
    </div>
  );
}

请在使用 onKeyPress 的地方尝试 onChange。实际上,它是在第二次按下时读取元素的值。

...
  return (
    <div className="App">
      <input onChange={handleInput} defaultValue={state} />
    </div>
  );
}