uz
Feedback
ToCode

ToCode

Kanalga Telegramโ€™da oโ€˜tish

ื˜ื™ืคื™ื ืงืฆืจื™ื ืœืžืชื›ื ืชื™ื ืžืืช ื™ื ื•ืŸ ืคืจืง

Ko'proq ko'rsatish
1 419
Obunachilar
-124 soatlar
Ma'lumot yo'q7 kunlar
-230 kunlar
Postlar arxiv
ToCode
1 419
# ื˜ื™ืค JavaScript: ืขื“ื›ื•ืŸ ืคืจืžื˜ืจื™ื ืฉืœ ืฉื•ืจืช ื›ืชื•ื‘ืช ื›ืชื•ื‘ืช ืื™ื ื˜ืจื ื˜ ื™ื›ื•ืœื” ืœื”ื›ื™ืœ ืคืจืžื˜ืจื™ื ืื—ืจื™ ืกื™ืžืŸ ืฉืืœื” ืฉืžื’ื™ืขื™ื ื‘ืคื•ืจืžื˜ ืฉืœ ืฉื ื”ืคืจืžื˜ืจ ื•ืื– ืกื™ืžืŸ ืฉื•ื•ื” ื•ืื– ื”ืขืจืš ืฉืœื• - ืœืžืฉืœ ื‘ื›ืชื•ื‘ืช ื”ื‘ืื” ื™ืฉ ืฉื ื™ ืคืจืžื˜ืจื™ื ื‘ืฉืžื•ืช foo ื• bar ืขื ื”ืขืจื›ื™ื 10 ื• 20:
http://www.tocode.co.il?foo=10&bar=20
ืื ืืชื ืขื“ื™ื™ืŸ ืžืฉืชืžืฉื™ื ื‘ื‘ื™ื˜ื•ื™ื™ื ืจื’ื•ืœืืจื™ื™ื ืื• ืคื•ื ืงืฆื™ื•ืช ืœืขืจื™ื›ืช ื˜ืงืกื˜ ื›ื“ื™ ืœืงื‘ืœ ื•ืœืขื“ื›ืŸ ืืช ื”ืขืจื›ื™ื ืฉืœ ืื•ืชื ืคืจืžื˜ืจื™ื, ืชืฉืžื—ื• ืœืฉืžื•ืข ืฉืžื–ืžืŸ ื™ืฉ ืคื™ืชืจื•ืŸ ื—ื“ืฉ ืฉืขื•ื‘ื“ ื‘ืจื•ื‘ ื”ื“ืคื“ืคื ื™ื ื•ื ืงืจื URLSearchParams. ื‘ืฉื‘ื™ืœ ืœื”ืฉืชืžืฉ ื‘ื• ืื ื™ ื™ื•ืฆืจ ืื•ื‘ื™ืงื˜ URL ืžื”ื›ืชื•ื‘ืช, ื•ืื– ืงื•ืจื ืœืคื•ื ืงืฆื™ื” searchParams ืฉืœ ืื•ืชื• ืื•ื‘ื™ืงื˜. ื›ืฉื™ืฉ ืœื™ ื‘ื™ื“ searchParams ืื ื™ ื™ื›ื•ืœ ืœื”ืคืขื™ืœ ืืช ื”ืคื•ื ืงืฆื™ื•ืช ืฉืœื• ื›ื“ื™ ืœืงืจื•ื ื•ืœืขื“ื›ืŸ ืืช ืžืฉืชื ื™ ื”ื—ื™ืคื•ืฉ. ื”ืคื•ื ืงืฆื™ื•ืช ื”ืžืขื ื™ื™ื ื•ืช ื”ืŸ: 1. ืคื•ื ืงืฆื™ื™ืช get ืฉืžืงื‘ืœืช ืฉื ืฉืœ ืคืจืžื˜ืจ ื•ืžื—ื–ื™ืจื” ืืช ื”ืขืจืš ื”ืจืืฉื•ืŸ ืฉืžืงื•ืฉืจ ืืœื™ื• 2. ืคื•ื ืงืฆื™ื™ืช append ืฉืžื•ืกื™ืคื” ืขืจืš ื—ื“ืฉ ืœืคืจืžื˜ืจ (ื™ื›ื•ืœื™ื ืœื”ื™ื•ืช ื›ืžื” ืžื•ืคืขื™ื ืฉืœ ืื•ืชื• ืคืจืžื˜ืจ, ืื– ืฉื™ืžื• ืœื‘ ืœืงืจื•ื ืœื” ื›ืžื” ืคืขืžื™ื ืจืง ืื ืืชื ื‘ืืžืช ืฆืจื™ื›ื™ื - ืœืžืฉืœ ื‘ืฉื‘ื™ืœ ืœื™ื™ืฆื’ ืžืขืจืš). 3. ืคื•ื ืงืฆื™ื™ืช set ืฉืžืขื“ื›ื ืช ืขืจืš ืฉืœ ืคืจืžื˜ืจ ื•ืžืฉืื™ืจื” ืจืง ืžื•ืคืข ืื—ื“ ืฉืœื•. ืืช ืฉืืจ ื”ืคื•ื ืงืฆื™ื•ืช ืืคืฉืจ ืœืžืฆื•ื ื‘ืชื™ืขื•ื“ ื›ืืŸ: https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams ื‘ืขื–ืจืช ืื•ืชืŸ ืคื•ื ืงืฆื™ื•ืช ืื ื™ ื™ื›ื•ืœ ืœืฉืœื•ืฃ ื•ืœื”ื“ืคื™ืก ืืช ื”ืขืจื›ื™ื ืฉืœ foo ื• bar ืžื”ื›ืชื•ื‘ืช ื”ืงื•ื“ืžืช:
const url = new URL("http://www.tocode.co.il?foo=10&bar=20");

> url.searchParams.get('foo')
'10'

> url.searchParams.get('bar')
'20'
ืื• ืœืขื“ื›ืŸ ืืช ืื—ื“ ื”ืขืจื›ื™ื, ืœื”ื•ืกื™ืฃ ืคืจืžื˜ืจ ื—ื“ืฉ ื•ืœืงื‘ืœ ืืช ื”ื›ืชื•ื‘ืช ื”ืžืขื•ื“ื›ื ืช:
> url.searchParams.set('foo', 'new value')
> url.searchParams.set('newKey', 12)

> url.toString()
'http://www.tocode.co.il/?foo=new+value&bar=20&newKey=12'

ToCode
1 419
# ื”ื“ืจืš ื”ืฉื ื™ื” ื›ืฉืœื•ืžื“ื™ื ื˜ื›ื ื•ืœื•ื’ื™ื” ื—ื“ืฉื” ื‘ืคืขื ื”ืจืืฉื•ื ื” ื”ื ื˜ื™ื” ื”ื˜ื‘ืขื™ืช ื”ื™ื ืœื—ืคืฉ "ืื™ืš ืขื•ืฉื™ื ื“ื‘ืจื™ื". ื‘ืจื’ืข ื”ื–ื” ืœื ืžืขื ื™ื™ืŸ ืื•ืชื™ ืœื“ืขืช ืฉื™ืฉ 3 ื“ืจื›ื™ื ืœื”ื’ื“ื™ืจ ืคื•ื ืงืฆื™ื” ืื• 5 ื“ืจื›ื™ื ืœื”ื’ื“ื™ืจ ืžืฉืชื ื”. ื”ื“ืจืš ื”ืฉื ื™ื” ืจืง ืชื‘ืœื‘ืœ ืื•ืชื™ ื™ื•ืชืจ, ื›ื™ ืขื•ื“ ืœื ื”ื‘ื ืชื™ ืืช ื”ื“ืจืš ื”ืจืืฉื•ื ื”. ื”ื‘ืขื™ื” ืžืชื—ื™ืœื” ื›ืฉืื—ืจื™ ืฉืœืžื“ื ื• ืืช ื”ื“ืจืš ื”ืจืืฉื•ื ื” ืื ื—ื ื• ืขื•ืฆืจื™ื ื•ื—ื•ืฉื‘ื™ื ืฉื–ื• ื”ื“ืจืš ื”ื›ื™ "ืคืฉื•ื˜ื”", ื”ื›ื™ "ื˜ื•ื‘ื”", ื”ื›ื™ "ืื™ื ื˜ื•ืื™ื˜ื™ื‘ื™ืช" ืื• ื”ื›ื™ "ืžื”ื™ืจื”" ืœืขืฉื•ืช ื“ื‘ืจื™ื. ืฉืื ืžื›ืœ ื”ื“ืจื›ื™ื ืฉื”ื™ื• ื–ืžื™ื ื•ืช ืœื™ ื™ืฆื ืฉืœืžื“ืชื™ ืืช ื”ื“ืจืš ื”ืžืกื•ื™ืžืช ื”ื–ืืช, ื‘ื˜ื— ื”ื™ืชื” ืœื™ ืกื™ื‘ื” ื˜ื•ื‘ื” ื•ื‘ื˜ื— ื›ื“ืื™ ืœื”ืžืฉื™ืš ืœื”ืฉืชืžืฉ ื‘ื”. ื•ืื– ืื ื—ื ื• ืžืชื—ื™ืœื™ื ืœื”ืฆื“ื™ืง ืื—ื•ืจื” ื‘ื—ื™ืจื•ืช ื˜ื›ื ื•ืœื•ื’ื™ื•ืช, ืœืžืฉืœ "ืืฆืœื ื• ื›ื•ืชื‘ื™ื ืืช ื”ืžื•ืฆืจ ื‘ืคืจื™ื™ืžื•ื•ืจืง X ื›ื™ ื”ื•ื ื”ื›ื™ ืงืœ ืœืœืžื™ื“ื”", ืื• "ืื ื—ื ื• ืœื ืžืฉืชืžืฉื™ื ื‘ื›ืœื™ Y ื›ื™ ื–ื” ืจืง ื™ืื˜ ืื•ืชื ื•", ื•ื’ื "ื ื›ื•ืŸ ืฉื›ื•ืœื ื˜ื•ืขื ื™ื ืฉืฉื™ื˜ื” Z ื ื•ืชื ืช ื‘ื™ืฆื•ืขื™ื ื™ื•ืชืจ ื˜ื•ื‘ื™ื, ืื‘ืœ ื‘ืฉื‘ื™ืœ ื”ืžื•ืฆืจ ืฉืœื ื• ืฉื™ื˜ื” X ืžืกืคื™ืง ื˜ื•ื‘ื”". ื‘ืœื‘ ืื•ืœื™ ื”ื™ื™ืชื ืฉืžื—ื™ื ืœื”ื›ื™ืจ ื’ื ืืช ื”ื“ืจื›ื™ื ื”ืื—ืจื•ืช, ืื‘ืœ ื›ืจื’ืข ื‘ื”ืชื—ืฉื‘ ื‘ืžื•ืฆืจ, ื‘ืชืงืœื•ืช, ื‘ืกื“ืจื™ ื”ืขื“ื™ืคื•ื™ื•ืช ื•ืฉืืจ ื”ืื™ืœื•ืฆื™ื ืฉืœ ื”ืขื•ืœื, ืžื” ืขื›ืฉื™ื• ืœืœืžื•ื“ ืขื•ื“ ื“ืจืš ืœืขืฉื•ืช ื‘ื“ื™ื•ืง ืืช ืื•ืชื• ื“ื‘ืจ? ืœื ื—ื‘ืœ ืขืœ ื”ื–ืžืŸ? ืื•ืœื™. ืื‘ืœ ื™ืฉ ืขื•ื“ ืืคืฉืจื•ื™ื•ืช- ืื•ืœื™ ื–ื” ืœื ื™ื™ืงื— ื›ืœ ื›ืš ื”ืจื‘ื” ื–ืžืŸ, ื›ื™ ืื—ืจื™ ืฉืžื›ื™ืจื™ื ื“ืจืš ืื—ืช ื™ื•ืชืจ ืงืœ ืœืœืžื•ื“ ื“ืจื›ื™ื ื ื•ืกืคื•ืช? ืื•ืœื™ ื”ื“ืจืš ื”ืฉื ื™ื” ื‘ืืžืช ื™ื•ืชืจ ื˜ื•ื‘ื”? ืื•ืœื™ ื”ื™ื›ืจื•ืช ืขื ืขื•ื“ ื“ืจืš ืชืขื–ื•ืจ ืœืš ืœื”ื‘ื™ืŸ ื˜ื•ื‘ ื™ื•ืชืจ ืืช ื”ืงื•ื“ ืฉืœ ื”ื“ืจืš ื”ืจืืฉื•ื ื”? ืื•ืœื™ ื‘ืื•ืชื• ืจื’ืข ืฉืœ ื”ืชื—ืœื” ื‘ืืžืช ื”ื“ืจืš ื”ืจืืฉื•ื ื” ื”ื™ืชื” ื˜ื•ื‘ื” ื™ื•ืชืจ ืขื‘ื•ืจืš, ืื‘ืœ ื–ื” ืœื ืื•ืžืจ ืฉื”ื™ื ืชื™ืฉืืจ ื›ื–ืืช ืœืชืžื™ื“. ื‘ื“ื™ื•ืง ื›ืจื’ืข, ื‘ื”ืชื—ืฉื‘ ื‘ืžื•ืฆืจ, ื‘ืชืงืœื•ืช ื•ื‘ืกื“ืจื™ ื”ืขื“ื™ืคื•ื™ื•ืช, ื”ื“ืจืš ื”ืฉื ื™ื” ื”ื™ื ื”ื“ืจืš ืงื“ื™ืžื”.

ToCode
1 419
ื˜ืขื•ืช ื“ื•ืžื” ืœืžืจื•ืช ืฉืคื—ื•ืช ืžื˜ืจื™ื“ื” ืืคืฉืจ ืœืจืื•ืช ื‘ืงื•ื“ ื”ื‘ื:
function TitleEditor() {
  const [title, setTitle] = useState(document.title);

  useEffect(() => {
    document.title = title;
  }, [title]);

  function handleChange(e) {
    setTitle(e.target.value);
  }

  return (
    <input type="text" value={title} onChange={handleChange} />
  );
}
ื–ื• ืงื•ืžืคื•ื ื ื˜ื” ืฉืžืฆื™ื’ื” ืชื™ื‘ืช ื˜ืงืกื˜, ื•ื›ืœ ืฉื™ื ื•ื™ ืฉืœ ื”ื˜ืงืกื˜ ื‘ืชื™ื‘ื” ื’ื ืžืขื“ื›ืŸ ืืช ื” title ืฉืœ ื”ืขืžื•ื“. ื”ืงื•ื“ ืขื•ื‘ื“ ืื‘ืœ ื”ืฉื™ืžื•ืฉ ื‘ืืคืงื˜ ื›ืืŸ ืฆื•ืจื: ืื™ืŸ ืคื” ื‘ืืžืช ืกื™ื ื›ืจื•ืŸ ื‘ื™ืŸ ืžืฉื”ื• ื—ื™ืฆื•ื ื™ ืœืžืฉืชื ื” ืจื™ืืงื˜, ืื™ืŸ ืคื•ื ืงืฆื™ื™ืช ื ื™ืงื•ื™ ืœืืคืงื˜ ื•ื ื›ื•ืŸ ืฉืœื ื™ืงืจื” ื ื–ืง ืื ื ืจื™ืฅ ืืช ื”ืืคืงื˜ ื›ืžื” ืคืขืžื™ื ืื‘ืœ ื‘ืชื›ืœ'ืก ื›ืœ ื”ืจืฆื” ื ื•ืกืคืช ืฉืœ ื”ืืคืงื˜ ื›ืฉื” title ื›ื‘ืจ ืžืชืื™ื ืœืžืฉืชื ื” ื”ืกื˜ื™ื™ื˜ ื”ื™ื ืคืฉื•ื˜ ืžื™ื•ืชืจืช. ื‘ืžืงื•ื ื–ื” ืืคืฉืจ ืœื•ื•ืชืจ ืขืœ ื”ืืคืงื˜ ื•ืœื›ืชื•ื‘ ืืช ื”ืงื•ืžืคื•ื ื ื˜ื” ื‘ืฆื•ืจื” ื”ื‘ืื” ื•ื”ื™ื•ืชืจ ื™ืขื™ืœื”:
function TitleEditor() {
  const [title, setTitle] = useState(document.title);

  function handleChange(e) {
    setTitle(e.target.value);
    document.title = e.target.value;
  }

  return (
    <input type="text" value={title} onChange={handleChange} />
  );
}
ืžืงื•ื•ื” ืฉื”ืคื•ืกื˜ ื”ื–ื” ื™ืขื–ื•ืจ ืœื›ื ืœื˜ืขื•ืช ืคื—ื•ืช ืขื useEffect ื•ืœื—ืฉื•ื‘ ืขืœื™ื• ื›ืžื• ืฉื”ื•ื - ืžื ื’ื ื•ืŸ ืกื™ื ื›ืจื•ืŸ ื‘ื™ืŸ ืงื•ื“ ืจื™ืืงื˜ ืœืžืฆื‘ ืขื ื™ื™ื ื™ื ื—ื™ืฆื•ื ื™ ืฉืงื•ืจื” ื‘ื“ืคื“ืคืŸ. ื•ื›ืžื•ื‘ืŸ ืื ื ืชืงืœืชื ื‘ื˜ืขื•ื™ื•ืช ื ื•ืกืคื•ืช ื‘ืขื‘ื•ื“ื” ืขื useEffect ืฉืœื ื—ืฉื‘ืชื™ ืขืœื™ื”ืŸ ื›ืืŸ, ืืฉืžื— ืœืฉืžื•ืข ื‘ืชื’ื•ื‘ื•ืช.

ToCode
1 419
}}
    >
      Click me!
    </button>
  </div>
)
(ื•ืชื•ื“ื” ืœื ื™ืงื•ืœื” ืžืจื’ื™ื˜ ืขืœ ื”ื“ื•ื’ืžื” ื”ื–ืืช). ื—ื•ืกืจ ืชื™ืื•ื ื‘ื™ืŸ ืคื•ื ืงืฆื™ื™ืช ื”ืืคืงื˜ ืœืžืขืจืš ื”ืชืœื•ื™ื•ืช ื”ื•ื ืชืงืœื” ื›ืœ ื›ืš ื ืคื•ืฆื” ืฉื™ืฉ ืคืœืื’ื™ืŸ ืœ eslint ืฉืžื–ื”ื” ืื•ืชื” ื•ืžื•ืžืœืฅ ืžืื•ื“ ืœื”ืฉืชืžืฉ ื‘ื• ื‘ืคืจื•ื™ืงื˜ ืฉืœื›ื: https://www.npmjs.com/package/eslint-plugin-react-hooks. ## ืœื”ืฉืชืžืฉ ื‘ืื•ื‘ื™ืงื˜ ืžืงื•ื ืŸ ื‘ืžืขืจืš ื”ืชืœื•ื™ื•ืช ื‘ืื’ ืขื“ื™ืŸ ื ื•ืกืฃ ื•ืžืื•ื“ ื ืคื•ืฅ ืขื ืžืขืจืš ื”ืชืœื•ื™ื•ืช ืงื•ืจื” ื›ืฉืื ื™ ืžืฉืชืžืฉ ื‘ืื•ื‘ื™ืงื˜ ืžืงื•ื ืŸ ื‘ืชื•ืš ืžืขืจืš ื–ื”. ื”ื‘ืขื™ื” ื›ืืŸ ื”ื™ื ืฉืฉื™ื ื•ื™ ื‘ืฉื“ื” ืคื ื™ืžื™ ืฉืœ ืื•ื‘ื™ืงื˜ ืœื ื’ื•ืจื ืœืจื™ืขื ื•ืŸ ื”ืืคืงื˜, ื•ืœื›ืŸ ื ื“ืžื” ืœื ื• ืฉื”ืืคืงื˜ ืžืกื•ื ื›ืจืŸ ื›ืฉื‘ืขืฆื ื”ื•ื ืœื. ื”ื ื” ื“ื•ื’ืžื” ืคืฉื•ื˜ื” ืฉืฆื•ื‘ืขืช ืืช ื”ืจืงืข ืฉืœ ื”ืคื™ืกืงื” ื‘ืื“ื•ื ืจืง ืคืขื ืื—ืช ื•ืœื ืžืจืขื ื ืช ืืช ื”ืฆื‘ืข ืื ื”ืคื™ืกืงื” ืžืฆื•ื™ืจืช ืžื—ื“ืฉ:
function BadRef() {
  const ref = useRef(null);
  const [visible, setVisible] = useState(true);

  useEffect(() => {
    if (ref.current) {
        ref.current.style.backgroundColor = 'red';
    }
  }, [ref]);

  return (
    <div>
      <input type="checkbox" checked={visible} onChange={(e) => setVisible(e.target.checked)} />
      {visible && <p ref={ref}>just some text</p>}
    </div>
  );
}
ื•ื”ืชื™ืงื•ืŸ ื”ื•ื ืคืฉื•ื˜:
function BadRef() {
  const ref = useRef(null);
  const [visible, setVisible] = useState(true);

  useEffect(() => {
    if (ref.current) {
      ref.current.style.backgroundColor = 'red';
    }
  }, [ref.current]);

  return (
    <div>
      <input type="checkbox" checked={visible} onChange={(e) => setVisible(e.target.checked)} />
      {visible && <p ref={ref}>just some text</p>}
    </div>
  );
}
## ืœืฉื›ื•ื— ืœื”ื—ื–ื™ืจ ืคื•ื ืงืฆื™ื™ืช ื ื™ืงื•ื™ ื˜ืขื•ืช ืฉืœื™ืฉื™ืช ื‘ืจืฉื™ืžื” ื”ื™ื ืœื›ืชื•ื‘ ืืคืงื˜ ื‘ืœื™ ืคื•ื ืงืฆื™ื™ืช ื ื™ืงื•ื™. ืขื“ ืจื™ืืงื˜ 18 ื–ื” ืœื ื”ื™ื” ืžืžืฉ ื˜ืขื•ืช ื›ื™ ืœืคืขืžื™ื ืœืคื™ ืžืขืจืš ื”ืชืœื•ื™ื•ืช ื”ื™ื” ืืคืฉืจ ืœื“ืขืช ืžืชื™ ื”ืืคืงื˜ ื™ืจื•ืฅ, ืื‘ืœ ื”ื—ืœ ืžืจื™ืืงื˜ 18 ืื ื—ื ื• ืฆืจื™ื›ื™ื ืœื—ืฉื•ื‘ ืขืœ ืืคืงื˜ื™ื ื‘ืชื•ืจ ืžืฉื”ื• ืฉืืคืฉืจ ืชืžื™ื“ ืœื”ืกื™ืจ ื•ืœื”ื•ืกื™ืฃ ืื•ืชื• ืžื—ื“ืฉ, ื•ืืกื•ืจ ืœื ื• ืœื”ื ื™ื— ืฉืืคืงื˜ ื™ืจื•ืฅ ืจืง ืคืขื ืื—ืช. ื‘ืžืฆื‘ ืคื™ืชื•ื— ืจื™ืืงื˜ ืืคื™ืœื• ืžื‘ืœื‘ืœ ืื•ืชื ื• ื•ื‘ื›ื•ื•ื ื” ืžืจื™ืฅ ืืช ื›ืœ ื”ืืคืงื˜ื™ื ืคืขืžื™ื™ื ื›ื“ื™ ืœื•ื•ื“ื ืฉื”ืงื•ื“ ืฉืœื ื• ืœื ืžืกืชื‘ืš ืขื ื–ื”. ืœื›ืŸ ืงื•ืžืคื•ื ื ื˜ื” ื›ื–ืืช ื›ื‘ืจ ืืกื•ืจ ืœื›ืชื•ื‘ ื‘ืจื™ืืงื˜ 18:
function WindowSize(props) {
  const [width, setWidth] = useState(window.innerWidth);
  const [height, setHeight] = useState(window.innerHeight);
  const { updateMs=1000 } = props;

  useEffect(() => {
    const handleResize = _.debounce(function handleResize() {
      setWidth(window.innerWidth);
      setHeight(window.innerHeight);
    }, updateMs);
    window.addEventListener('resize', handleResize);
  }, []);


  return (
    <p>Window Size: {width}x{height}</p>
  );
}
ืืคื™ืœื• ืฉืžืขืจืš ื”ืชืœื•ื™ื•ืช ืจื™ืง, ืขื“ื™ื™ืŸ ืœื ืžื•ื‘ื˜ื— ืœื ื• ืฉื”ืืคืงื˜ ื™ืจื•ืฅ ืจืง ืคืขื ืื—ืช. ## ืœืฉื›ื•ื— ืžืชื™ ืืคืงื˜ ืจืฅ ื‘ืจื’ืข ืฉื™ืฉ ืฉื™ื ื•ื™ ื‘ืื•ื‘ื™ืงื˜ ื‘ืžืขืจืš ื”ืชืœื•ื™ื•ืช, ื”ืฉื™ื ื•ื™ ื”ื–ื” ื’ื•ืจื ืœืจื™ืืงื˜ ืœืจื ื“ืจ ืžื—ื“ืฉ ืืช ื”ืงื•ืžืคื•ื ื ื˜ื” ื•ืจืง ืื—ืจื™ ื”ืจื™ื ื“ื•ืจ ืžื—ื“ืฉ ื•ื”ืคืขืœื” ื ื•ืกืคืช ืฉืœ useEffect ืจื™ืืงื˜ ืžื–ื”ื” ืฉืฆืจื™ืš ืœื”ืจื™ืฅ ืžื—ื“ืฉ ืืช ื”ืืคืงื˜. ืœื›ืŸ ืืคืงื˜ ื™ืจื•ืฅ ืชืžื™ื“ ืื—ืจื™ ื”ืจื™ื ื“ื•ืจ ืฉืœ ื”ืขืจืš ืฉื’ืจื ืœื•. ื ืชื‘ื•ื ืŸ ื‘ื“ื•ื’ืžื” ื”ื‘ืื”:
function EvenOdd() {
  const [count, setCount] = useState(0);
  const [isEven, setIsEven] = useState(true);

  useEffect(() => {
    setIsEven(count % 2 === 0);
  }, [count]);

  return (
    <div>
      <p>{isEven ? "Even" : "Odd"}</p>
      <button onClick={() => setCount(c => c + 1)}>Clicks: {count}</button>
    </div>
  );
}
ื”ืงื•ืžืคื•ื ื ื˜ื” ืขื•ื‘ื“ืช ื•ืžืฆื™ื’ื” ืžื•ื ื” ืœื—ื™ืฆื•ืช ื•ืžืขืœื™ื• ื”ื˜ืงืกื˜ - ื›ืฉื”ืžืกืคืจ ื–ื•ื’ื™ ืžื•ืคื™ืขื” ื”ืžื™ืœื” Even ื•ื›ืฉืื™ ื–ื•ื’ื™ ืžื•ืคื™ืขื” ื”ืžื™ืœื” Odd. ื”ื‘ืขื™ื” ื›ืืŸ ื”ื™ื ืฉื›ืœ ืœื—ื™ืฆื” ืขืœ ื”ื›ืคืชื•ืจ ื™ื•ืฆืจืช ืžืกืคืจ ื›ืคื•ืœ ืฉืœ render-ื™ื. ื‘ืžืงื•ื ืœืขื“ื›ืŸ ืืช ื”ืขืจืš ืฉืœ count ื•ืœืจื ื“ืจ ืืช ื”ืงื•ืžืคื•ื ื ื˜ื” ืžื—ื“ืฉ ื›ื“ื™ ืœื”ืฆื™ื’ ืืช ื”ืขืจืš ื”ืžืขื•ื“ื›ืŸ, ืื ื—ื ื• ืžืขื“ื›ื ื™ื ืงื•ื“ื ื›ืœ ืืช count, ืžืฆื™ื’ื™ื ืื•ืชื•, ื•ืื– ืžืขื“ื›ื ื™ื ืืช isEven ื•ืฉื•ื‘ ืžืจื ื“ืจื™ื ืืช ื”ืงื•ืžืคื•ื ื ื˜ื”. ื ืฉื™ื ืœื‘ ื’ื ืฉืœืืคืงื˜ ื”ื–ื” ืื™ืŸ ืคื•ื ืงืฆื™ื™ืช ื ื™ืงื•ื™ ื•ื”ื•ื ืœื "ืžืกื ื›ืจืŸ" ืžืฉืชื ื™ ืจื™ืืงื˜ ืขื ืžืฉื”ื• ืฉื ืžืฆื ื‘ื—ื•ืฅ ืืœื ื”ื•ื ืคืฉื•ื˜ ืืžื•ืจ ืœืกื ื›ืจืŸ ื‘ื™ืŸ ืฉื ื™ ืžืฉืชื ื™ ืกื˜ื™ื™ื˜ ื‘ืื•ืชื” ืงื•ืžืคื•ื ื ื˜ื”. ื‘ืžืงืจื” ื”ื–ื” ื”ืจื‘ื” ื™ื•ืชืจ ื™ืขื™ืœ ื”ื™ื” ืœื”ืฉืชืžืฉ ื‘ืžืฉืชื ื” ืกื˜ื™ื™ื˜ ื™ื—ื™ื“. ืืคื™ืœื• ืื ื—ื™ื™ื‘ื™ื ืœื”ืฉืชืžืฉ ื‘ื›ืžื” ืžืฉืชื ื™ ืกื˜ื™ื™ื˜, ืขื“ื™ืฃ ืœืขื“ื›ืŸ ืื•ืชื ื™ื—ื“ ื‘ืื•ืชื” ืคื•ื ืงืฆื™ื” ืขื ื›ืžื” ืงืจื™ืื•ืช ืœ setState ื•ืœื ื“ืจืš ืืคืงื˜.

ToCode
1 419
# ืืจื‘ืข ื˜ืขื•ื™ื•ืช ื ืคื•ืฆื•ืช ื‘ืฉื™ืžื•ืฉ ื‘ useEffect ื”ืžืขื‘ืจ ืœืขื‘ื•ื“ื” ื‘ืฉื™ื˜ืช ื” Hooks ื”ื™ื” ื ืฉื™ืžื” ืœืจื•ื•ื—ื” ืขื‘ื•ืจ ืžืชื›ื ืชื™ ืจื™ืืงื˜ ืจื‘ื™ื, ื•ืžืงื•ืจ ืœืœื—ืฅ ืขื‘ื•ืจ ืื—ืจื™ื. ื‘ื›ืœ ืžืงืจื” ืžืขื‘ืจ ื–ื” ื“ืจืฉ ืฉื™ื ื•ื™ ืฉื™ื˜ืช ื—ืฉื™ื‘ื” ื•ื”ื•ื‘ื™ืœ ืœืงื•ื“ ืจื™ืืงื˜ ืฉื ื›ืชื‘ ืื—ืจืช. ื”ืคื•ื ืงืฆื™ื” useEffect ื”ื™ืชื” ื›ื ืจืื” ื” Hook ื”ืžืกื•ื‘ืš ืžื›ื•ืœื, ืžืื—ืจ ื•ื”ื™ื ื”ื—ืœื™ืคื” ืžืกืคืจ ืคื•ื ืงืฆื™ื•ืช ืžื—ื–ื•ืจ ื—ื™ื™ื ืฉื”ื’ื™ืขื• ืœืคื ื™ื” ื•ืขื“ื™ื™ืŸ ืขื‘ื“ื” ืงืฆืช ืื—ืจืช ืžื”ืฉื™ืœื•ื‘ ืฉืœ ื›ื•ืœืŸ. ื‘ืคื•ืกื˜ ื–ื” ืืกืงื•ืจ 4 ื˜ืขื•ื™ื•ืช ื ืคื•ืฆื•ืช ื‘ืฉื™ืžื•ืฉ ื‘ useEffect ืฉืื ื™ ืžืงื•ื•ื” ืฉื™ืขื–ืจื• ืœื›ื ืœื”ืฉืชืžืฉ ื‘ื• ื ื›ื•ืŸ ื•ืœื›ืชื•ื‘ ืงื•ืžืคื•ื ื ื˜ื•ืช ืจื™ืืงื˜ ื˜ื•ื‘ื•ืช ื™ื•ืชืจ. ## ืœืขื“ื›ืŸ ืงื•ื“ ื•ืœืฉื›ื•ื— ืœืขื“ื›ืŸ ืืช ืžืขืจืš ื”ืชืœื•ื™ื•ืช ื˜ืขื•ืช ืžืกืคืจ ืื—ืช ื•ื”ื ืคื•ืฆื” ื‘ื™ื•ืชืจ ื‘ืขื‘ื•ื“ื” ืขื useEffect ื‘ืื” ืœื™ื“ื™ ื‘ื™ื˜ื•ื™ ื‘ื“ืจืš ื›ืœืœ ื›ืฉืื ื—ื ื• ืžืขื“ื›ื ื™ื ืงื•ื“ ืงื™ื™ื, ืœืžืจื•ืช ืฉื™ื›ื•ืœื” ืœืงืจื•ืช ื’ื ื‘ื›ืชื™ื‘ืช ืืคืงื˜ ื—ื“ืฉ. ื”ืจืขื™ื•ืŸ ื”ื•ื ืคืฉื•ื˜, ื‘ื›ืœ useEffect ืื ื—ื ื• ืฆืจื™ื›ื™ื ืœื”ืขื‘ื™ืจ ื‘ืชื•ืจ ืคืจืžื˜ืจ ืฉื ื™ ืžืขืจืš ืฉืœ "ืชืœื•ื™ื•ืช", ื›ืœื•ืžืจ ื“ื‘ืจื™ื ืฉื›ืฉื”ื ืžืฉืชื ื™ื ื™ืฉ ืœื™ืฆื•ืจ ืžื—ื“ืฉ ืืช ื”ืืคืงื˜. ื”ื‘ืขื™ื” ืฉื›ืฉืžืขื“ื›ื ื™ื ืงื•ื“ ืงื™ื™ื ื”ืจื‘ื” ืคืขืžื™ื ืื ื—ื ื• ืฉื•ื›ื—ื™ื ืœืขื“ื›ืŸ ืืช ืžืขืจืš ื”ืชืœื•ื™ื•ืช, ืžื” ืฉืžื™ื™ืฆืจ ื‘ืื’ื™ื ืฉืœืคืขืžื™ื ืงืฉื” ืœืืชืจ. ื ืชื‘ื•ื ืŸ ื‘ืงื•ืžืคื•ื ื ื˜ื” ื”ื‘ืื” ืฉืžืฆื™ื’ื” ืืช ื’ื•ื“ืœ ื”ื—ืœื•ืŸ, ื•ื’ื ืžืขื“ื›ื ืช ืืช ื”ืชืฆื•ื’ื” ื›ืœ ืคืขื ืฉื”ื’ื•ื“ืœ ืžืฉืชื ื”:
function WindowSize() {
  const [width, setWidth] = useState(window.innerWidth);
  const [height, setHeight] = useState(window.innerHeight);

  useEffect(() => {
    const handleResize = _.debounce(function handleResize() {
      setWidth(window.innerWidth);
      setHeight(window.innerHeight);
    }, 1000);
    window.addEventListener('resize', handleResize);

    return () => {
      window.removeEventListener('resize', handleResize);
    }
  }, []);


  return (
    <p>Window Size: {width}x{height}</p>
  );
}
ื”ืงื•ืžืคื•ื ื ื˜ื” ืžืฉืชืžืฉืช ื‘ _.debounce ื›ื“ื™ ืœืขื“ื›ืŸ ืืช ื”ืชืฆื•ื’ื” ืœื ื™ื•ืชืจ ืžืคืขื ื‘ืฉื ื™ื”. ืขื›ืฉื™ื• ื‘ื•ืื• ื ื ื™ื— ืฉืžื™ืฉื”ื• ื‘ืขืชื™ื“ ืจื•ืฆื” ืœื”ืคื•ืš ืืช ื”ืงื•ื“ ื”ื–ื” ืœื™ื•ืชืจ ื’ื ืจื™, ื•ืœืงื‘ืœ ืžื‘ื—ื•ืฅ ืืช ื”ืคืจืžื˜ืจ ืœ debounce. ื”ืงื•ื“ ื”ืžืขื•ื“ื›ืŸ ืขื ื”ื‘ืื’ ื™ื”ื™ื”:
function WindowSize(props) {
  const [width, setWidth] = useState(window.innerWidth);
  const [height, setHeight] = useState(window.innerHeight);
  const { updateMs=1000 } = props;

  useEffect(() => {
    const handleResize = _.debounce(function handleResize() {
      setWidth(window.innerWidth);
      setHeight(window.innerHeight);
    }, updateMs);
    window.addEventListener('resize', handleResize);

    return () => {
      window.removeEventListener('resize', handleResize);
    }
  }, []);


  return (
    <p>Window Size: {width}x{height}</p>
  );
}
ืื ื ื™ืฆื•ืจ ืืช ื”ืงื•ืžืคื•ื ื ื˜ื” ื•ื ืขื‘ื™ืจ ืœื” ื‘ props ืืช ื”ืขืจืš ืฉืœ updateMs ื•ืื– ื ืขื‘ื™ืจ ืขืจืš ืื—ืจ ื‘ืžืงื•ื, ื”ืืคืงื˜ ืœื ื™ืชืขื“ื›ืŸ ื•ืชืžื™ื“ ื™ืฉืชืžืฉ ื‘ืขืจืš ื”ืจืืฉื•ืŸ ืฉืขื‘ืจ. ื“ื•ื’ืžื” ื ื•ืกืคืช ื•ืงืฆืช ื™ื•ืชืจ ืขื“ื™ื ื” ื”ื™ื ื”ืงื•ื“ ื”ื–ื”:
function WrongCounter() {
  const [clickCount, setClickCount] = React.useState(0)
  React.useEffect(() => {
    const timeout = setTimeout(() => {
      alert(clickCount)
    }, 5000)
    return () => clearTimeout(timeout)
  }, [])
  return (
    <div>
      <h1>Hello!</h1>
      <button onClick={() => setClickCount((prevCount) => prevCount + 1)}>
        Click me!
      </button>
    </div>
  )}
ื”ืคืขื ื”ืืคืงื˜ ืžืฉืชืžืฉ ื‘ืขืจืš ืฉืœ clickCount ืื‘ืœ ืื•ืชื• ืžืฉืชื ื” ืกื˜ื™ื™ื˜ ืœื ื ืžืฆื ื‘ืžืขืจืš ื”ืชืœื•ื™ื•ืช. ืœื›ืŸ ืื—ืจื™ ืฉืžืขื“ื›ื ื™ื ืืช ื”ืขืจืš ื”ืืคืงื˜ ืœื ืžืฉืชื ื” ื•ื” alert ืชืžื™ื“ ื™ื“ืคื™ืก 0. ื‘ืขื•ื“ ืฉื‘ื“ื•ื’ืžื” ื”ืจืืฉื•ื ื” ื›ืœ ืžื” ืฉืฆืจื™ืš ื‘ืฉื‘ื™ืœ ืœืชืงืŸ ืืช ื”ืงื•ื“ ื”ื•ื ืœืชืงืŸ ืืช ืžืขืจืš ื”ืชืœื•ื™ื•ืช. ื‘ื“ื•ื’ืžื” ื”ืฉื ื™ื” ื”ืกื™ืคื•ืจ ื™ื•ืชืจ ืขื“ื™ืŸ ื›ื™ ืื ืื ื™ ืื•ืกื™ืฃ ืืช clickCount ืœืžืขืจืš ื”ืชืœื•ื™ื•ืช ื•ื‘ืืžืช ืืฆื•ืจ ืžื—ื“ืฉ ืืช ื”ืืคืงื˜ ื›ืœ ืคืขื ืฉื”ื•ื ื™ืฉืชื ื” ืื– ื”ื”ืชื ื”ื’ื•ืช ืฉืœ ื”ืงื•ืžืคื•ื ื ื˜ื” ืชืฉืชื ื” - ื‘ืžืงื•ื ืœื”ืงืคื™ืฅ ืืช ื” alert ื—ืžืฉ ืฉื ื™ื•ืช ืื—ืจื™ ืฉื”ืงื•ืžืคื•ื ื ื˜ื” ื ื›ื ืกื” ืœืžืกืš, ื”ื™ื ืชื•ืงืคืฅ 5 ืฉื ื™ื•ืช ืื—ืจื™ ื”ืœื—ื™ืฆื” ื”ืื—ืจื•ื ื” ืขืœ ื”ื›ืคืชื•ืจ. ื‘ืฉื‘ื™ืœ ืœืฉืžื•ืจ ืขืœ ื”ื”ืชื ื”ื’ื•ืช ืื ื™ ื“ื•ื•ืงื ื›ืŸ ืฆืจื™ืš ืืช ืžืขืจืš ื”ืชืœื•ื™ื•ืช ืจื™ืง, ืื‘ืœ ืขืœื™ื™ ืœื‘ื˜ืœ ืืช ื”ืชืœื•ืช ื‘ clickCount. ื‘ืฉื‘ื™ืœ ื–ื” ืื ื™ ื™ื›ื•ืœ ืœืฉืžื•ืจ ืืช ืžืกืคืจ ื”ืœื—ื™ืฆื•ืช ื‘ืžืฉืชื ื” Ref:
const [clickCount, setClickCount] = React.useState(0)
const countRef = React.useRef()
React.useEffect(() => {
  const timeout = setTimeout(() => {
    alert(countRef.current)
  }, 5000)
  return () => clearTimeout(timeout)
}, [])
return (
  <div>
    <h1>Hello!</h1>
    <button
      onClick={() => {
        countRef.current = clickCount + 1
        setClickCount((prevCount) => prevCount + 1)

ToCode
1 419
# ืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ืขื•ื‘ื“ื™ื ืื ื”ืงืฉื‘ืชื ื™ื•ืชืจ ืžื“ื™ ื‘ื‘ื™ืช ืกืคืจ ืืชื ืขืœื•ืœื™ื ืœื—ืฉื•ื‘ ืฉืœืจืขื™ื•ื ื•ืช ื™ืฉ ืขืจืš ืจืง ืื ื”ื ืขื•ื‘ื“ื™ื. ื”ืฆื™ื•ืŸ ืฉืชืงื‘ืœื• ื‘ืžื‘ื—ืŸ ื ืงื‘ืข ืœืคื™ ืžืกืคืจ ื”ืชืฉื•ื‘ื•ืช ื”ื ื›ื•ื ื•ืช ืฉื›ืชื‘ืชื, ื•ืœื ืœืคื™ ืžืกืคืจ ื”ืชืฉื•ื‘ื•ืช ื”ื›ื•ืœืœ ืฉืขื ื™ืชื ืœืฉืืœื” (ื•ื‘ื›ืœืœ ืื ื™ ืœื ื—ื•ืฉื‘ ืฉืžื™ืฉื”ื• ื‘ื‘ื™ืช ืกืคืจ ืื™ ืคืขื ื‘ื™ืงืฉ ืžืžื ื™ ืœืขื ื•ืช ื›ืžื” ืชืฉื•ื‘ื•ืช ืฉื•ื ื•ืช ืœืื•ืชื” ืฉืืœื”). ื–ื” ื›ืื™ืœื• ื”ืžื˜ืจื” ื”ื™ื—ื™ื“ื” ืฉื ื”ื™ืชื” ืœื”ื›ื™ืจ ืืช ื”ืจืขื™ื•ืŸ ืฉืขื•ื‘ื“. ื”ื’ื™ืข ื”ื–ืžืŸ ืฉื ืชื’ื‘ืจ ืขืœ ื”ืฉืงืจ ื”ื–ื”. ืจืขื™ื•ื ื•ืช ืฉืœื ืขื•ื‘ื“ื™ื ื”ื ื‘ืขืœื™ ืขืจืš, ื”ืจื‘ื” ืคืขืžื™ื ื’ื“ื•ืœ ื‘ื”ืจื‘ื” ืžืจืขื™ื•ื ื•ืช ืฉืขื•ื‘ื“ื™ื. ื‘ืจื•ื‘ ื”ืžืงืฆื•ืขื•ืช ื”ื™ืฆื™ืจืชื™ื™ื ื”ื™ื•ื, ื•ื‘ืชื›ื ื•ืช ื‘ืžื™ื•ื—ื“, ืจืขื™ื•ื ื•ืช ืฉืœื ืขื•ื‘ื“ื™ื ื—ื™ื™ื‘ื™ื ืœื”ื™ื•ืช ื—ืœืง ืžืจื›ื–ื™ ืžื”ื—ื™ื™ื ืฉืœื ื•. ืื ืชื‘ืงืฉื• ืžืžื ื™ ืœื›ืชื•ื‘ ืชื•ื›ื ื™ืช ืฉืžื“ืคื™ืกื” ืขืœ ื”ืžืกืš Hello World ื‘ืฉืคืช ืชื›ื ื•ืช ืฉืื ื™ ืžื›ื™ืจ ืื ื™ ื‘ื˜ื•ื— ืฉืื“ืข ืื™ืš ืœืขืฉื•ืช ืืช ื–ื”. ืื•ืชื• ื“ื‘ืจ ืื ืื ืกื” ืœื›ืชื•ื‘ ืžืฉื—ืง ื˜ื˜ืจื™ืก. ืื‘ืœ ืื ืืฆื˜ืจืš ืœืžืžืฉ ืœืงื•ื— git ืžืืคืก ื–ื” ื›ื‘ืจ ื”ื•ืœืš ืœื”ื™ื•ืช ืงืฉื”. ื™ืฉ ืœื™ ืจืขื™ื•ืŸ ื›ืœืœื™ ืื™ืš ืœื”ืชื—ื™ืœ ืื‘ืœ ืื ื™ ืœื ื™ื•ื“ืข ืื ื”ื•ื ื™ืขื‘ื•ื“, ื•ืื ื™ ื“ื™ ื‘ื˜ื•ื— ืฉื—ืœืง ืžื”ื“ื‘ืจื™ื ืฉืืขืฉื” ืœื ื™ืขื‘ื“ื• ื‘ืคืขื ื”ืจืืฉื•ื ื”. ื”ืกื™ื‘ื” ื”ื™ื—ื™ื“ื” ืฉืื ื™ ื™ื›ื•ืœ ืœื›ืชื•ื‘ ื‘ืงืœื•ืช ื˜ื˜ืจื™ืก ืื‘ืœ ืœื ื‘ื˜ื•ื— ืื™ืš ืœื›ืชื•ื‘ ื’ื™ื˜ ื”ื™ื ืฉื›ื‘ืจ ื›ืชื‘ืชื™ ืžืฉื—ืงื™ ื˜ื˜ืจื™ืก ื‘ื›ืžื” ืฉืคื•ืช, ื•ืืฃ ืคืขื ืœื ื›ืชื‘ืชื™ ืœืงื•ื— ื’ื™ื˜. ื”ื“ืจืš ืงื“ื™ืžื” ืœื›ืชื•ื‘ ื“ื‘ืจื™ื ืฉืขื•ื“ ืœื ื›ืชื‘ืชื™ ื‘ืขื‘ืจ ืขื•ื‘ืจืช ื‘ื”ื›ืจื— ื“ืจืš ืจืขื™ื•ื ื•ืช ืฉืขื•ื“ ืœื ื ื™ืกื™ืชื™, ื•ืฉืื•ืœื™ ืœื ื™ืขื‘ื“ื•. ืื•ืชื ืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ื™ืขื‘ื“ื• ื”ื ื”ืžืคืชื— ืœื”ืชืงื“ืžื•ืช. ื™ื•ืชืจ ืžื–ื”, ืื ื”ื“ื‘ืจ ื”ื™ื—ื™ื“ ืฉืื ื™ ืขื•ืฉื” ื‘ืขื‘ื•ื“ื” ื”ื•ื ืœื›ืชื•ื‘ ืจืง ื“ื‘ืจื™ื ืฉืื ื™ ืžื›ื™ืจ, ืžื”ืจ ืžืื•ื“ ื”ืขื‘ื•ื“ื” ืชื”ื™ื” ืžืื•ื“ ืžืฉืขืžืžืช. ืืฃ ืื—ื“ ืœื ืจื•ืฆื” ืœื”ื™ืฉืืจ ืขืฉืจ ืฉื ื™ื ื‘ืžืงื•ื ืฉื‘ื• ื›ืœ ื‘ื•ืงืจ ื›ื•ืชื‘ื™ื ืžื—ื“ืฉ ื˜ื˜ืจื™ืก. ืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ื™ืขื‘ื“ื• ืžื•ืกื™ืคื™ื ืขื ื™ื™ืŸ ื•ืื•ืฉืจ ืœื—ื™ื™ื, ื•ื–ื” ื—ืœืง ืžื”ื“ื‘ืจื™ื ืฉืื ื—ื ื• ืฆืจื™ื›ื™ื ื›ื‘ื ื™ ืื“ื. ื•ื‘ื›ืœ ื–ืืช ืจื‘ื™ื ืžืื™ืชื ื• ื—ื•ืฉืฉื™ื ืžืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ื™ืขื‘ื“ื• ื•ืœื ื‘ื˜ื•ื—ื™ื ืื™ืš ืœื”ื’ื™ืข ืืœื™ื”ื ื•ืœืฉืœื‘ ืื•ืชื ื‘ื—ื™ื™ ื”ื™ื•ื ื™ื•ื. ื”ื ื” ืฉืœื•ืฉื” ืžืคืชื—ื•ืช ืฉื™ืขื–ืจื• ืœื ื• ืœืฉืœื‘ ืจืขื™ื•ื ื•ืช ื›ืืœื” ื‘ื—ื™ื™ ื”ื™ื•ื ื™ื•ื: ## ืจืขื™ื•ื ื•ืช ืฉืœื ืขื•ื‘ื“ื™ื ืฆืจื™ื›ื™ื ื–ืžืŸ ื”ืžืคืชื— ื”ืจืืฉื•ืŸ ื”ื•ื ื”ืžืกื’ืจืช - ื”ืžืงื•ื ื•ื”ื–ืžืŸ, ืฉื‘ื• ืžื•ืชืจ ืœื ืกื•ืช ื“ื‘ืจื™ื ืฉืœื ื‘ื˜ื•ื— ื™ืขื‘ื“ื•. ืื ืชืœืžื™ื“ ืฉื•ืืœ ืื•ืชื™ ืฉืืœื” ื‘ืงื•ืจืก ื”ื•ื ืžืฆืคื” ืœืงื‘ืœ ืชืฉื•ื‘ื” ืืžื™ื ื”. ื–ืืช ืœื ืกื™ื˜ื•ืืฆื™ื” ืฉื‘ื” ืจืฆื•ื™ ืœื ื—ืฉ ืจืขื™ื•ืŸ ืฉืœื ื‘ื“ืงืชื™. ืืคื™ืœื• ื‘ืฉืืœื•ืช ืฉืื ื™ ืœื ื™ื•ื“ืข ืขื“ื™ืฃ ืœื”ื’ื™ื“ ืืช ื–ื” ื‘ืฆื•ืจื” ื™ืฉื™ืจื”, ืœื”ื’ื™ื“ ืฉืื‘ื“ื•ืง ื•ืœื—ื–ื•ืจ ืขื ืชืฉื•ื‘ื” ืฉืขื•ื‘ื“ืช. ืœืขื•ืžืช ื–ืืช ืื ืื ื™ ื™ื•ืฉื‘ ื‘ื‘ื™ืช ื•ื‘ื•ื ื” ืœืงื•ื— ื’ื™ื˜, ืื™ืŸ ืฉื•ื ื‘ืขื™ื” ืฉืื ื™ ืžื ืกื” ืจืขื™ื•ืŸ, ื”ืจืขื™ื•ืŸ ื”ื–ื” ืœื ืžืฆืœื™ื—. ืืคืฉืจ ืœืžื—ื•ืง ืืช ื›ืœ ื”ืงื•ื“ ื•ืœื”ืชื—ื™ืœ ืžื—ืจ ืฉื•ื‘ ื‘ื›ื™ื•ื•ืŸ ืื—ืจ. ื‘ืฉื‘ื™ืœ ืœืฉืœื‘ ืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ืขื•ื‘ื“ื™ื ื‘ื—ื™ื™ื ืฉืœื ื• ืื ื—ื ื• ืจื•ืฆื™ื ืœืชืช ืœื”ื ืืช ื”ืžืงื•ื ื•ื”ื–ืžืŸ ืฉื‘ื• ื”ื ื™ื•ื›ืœื• ืœื”ืจื’ื™ืฉ ื‘ื ื•ื—, ื•ืื ื—ื ื• ื ื•ื›ืœ ืœื”ืจื’ื™ืฉ ืื™ืชื ื‘ื ื•ื—. ## ืจืขื™ื•ื ื•ืช ืฉืœื ืขื•ื‘ื“ื™ื ืœื ืื•ื”ื‘ื™ื ืฉืžื•ื“ื“ื™ื ืื•ืชื ื”ืžืคืชื— ื”ืฉื ื™ ื”ื•ื ื”ืžื˜ืจื”, ืื• ืžื” ืื ื™ ืžื ืกื” ืœื”ืฉื™ื’ ืขื ืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ืขื•ื‘ื“ื™ื. ืื ื”ื’ื™ืฉื” ืฉืœื™ ื”ื™ื ืฉื–ืžืŸ ืฉืžื•ืฉืงืข ื‘ื›ืชื™ื‘ืช ืงื•ื“ ื—ื™ื™ื‘ "ืœื”ื—ื–ื™ืจ ืืช ื”ื”ืฉืงืขื”" ืื– ื™ื”ื™ื” ืœื™ ืงืฉื” ืžืื•ื“ ืœื‘ื–ื‘ื– 3 ืฉืขื•ืช ืขืœ ื ื™ืกื™ื•ืŸ ืœื‘ื ื•ืช ืœืงื•ื— ื’ื™ื˜ ืฉืœื ื™ืขื‘ื•ื“. ืกื™ื›ื•ื™ ื˜ื•ื‘ ืฉืื ื™ ืืคื™ืœื• ืœื ืืชื—ื™ืœ ื›ื™ ืื™ื–ื” ื”ื—ื–ืจ ื”ืฉืงืขื” ื‘ื›ืœืœ ืืคืฉืจ ืœืงื‘ืœ ืžืคืจื•ื™ืงื˜ ื›ื–ื”. ื•ื‘ื“ื™ื•ืง ืžื”ื’ื™ืฉื” ื”ื‘ื™ืช ืกืคืจื™ืช ื”ื–ืืช ืื ื—ื ื• ืจื•ืฆื™ื ืœื”ื™ืคืจื“. ืžื™ืžื•ืฉ ืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ื™ืขื‘ื“ื• ื‘ืชื•ืš ื”ืžืงื•ื ื•ื”ื–ืžืŸ ืฉืžื•ืงื“ืฉ ืœื”ื ื”ื•ื ื”ืžื˜ืจื”. ืื ื™ ื‘ื•ื ื” ืืช ื–ื” ื›ื“ื™ ืœื‘ื ื•ืช ืืช ื–ื”, ื•ืื ื‘ืกื•ืฃ ื’ื ื™ืฆื ืคืจื•ื™ืงื˜ ื–ื” ืื—ืœื”, ืื‘ืœ ื’ื ืื ืœื ื–ื” ืžืžืฉ ื‘ืกื“ืจ. ื”ื‘ืœื•ื’ ื”ื–ื” ื”ื•ื ื“ื•ื’ืžื” ืœืžืฉื—ืง ืฉืœื™ ืขื ืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ืขื•ื‘ื“ื™ื. ืื ื™ ื›ื•ืชื‘ ื›ืœ ื™ื•ื, ื—ืœืง ืžื”ืคื•ืกื˜ื™ื ืžื“ื‘ืจื™ื ืœืื ืฉื™ื ื•ื—ืœืง ืœื, ื•ื–ื” ืžืขื•ืœื”. ืื ื™ ืœื ืžืกืชื›ืœ ื›ืžื” ืื ืฉื™ื ื ื›ื ืกื™ื ืœืงืจื•ื ืคื•ืกื˜ ืื• ืžืฉืชืคื™ื ืื•ืชื• ื›ื™ ื–ืืช ืœื ื”ืžื˜ืจื”. ื”ื›ืชื™ื‘ื” ื”ื™ื ื”ืžื˜ืจื” ืฉืœ ืขืฆืžื”. ## ืืคืฉืจ (ื•ื›ื“ืื™) ืœื™ื™ืฉื ืจืขื™ื•ื ื•ืช ืฉืœื ืขื•ื‘ื“ื™ื ื‘ื›ืœ ืชื—ื•ื ื‘ื—ื™ื™ื ืชืจื’ื•ืœ ืขื•ื–ืจ, ื•ื’ื ืฉื™ืœื•ื‘ ืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ืขื•ื‘ื“ื™ื ื‘ื—ื™ื™ื ืฉืœื ื• ื–ื• ืžื™ื•ืžื ื•ืช ืฉื“ื•ืจืฉืช ืชืจื’ื•ืœ. ื™ื›ื•ืœ ืœื”ื™ื•ืช ืฉื‘ืขื‘ื•ื“ื” ื”ืžืงืฆื•ืขื™ืช ืฉืœื›ื ืืชื ืœื ืจื•ืื™ื ืขื›ืฉื™ื• ืฉื•ื ืžืงื•ื ืฉื‘ื• ืืคืฉืจ ืœื ืกื•ืช ืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ืขื•ื‘ื“ื™ื. ื™ื›ื•ืœ ืœื”ื™ื•ืช ืฉืืชื ืžืจื’ื™ืฉื™ื ืฉืžื•ื“ื“ื™ื ื›ืœ ืฆืขื“ ืฉืœื›ื ื•ืฉืืชื ื‘ืืจื’ื•ืŸ ืฉืœื ืžืืคืฉืจ ืœื›ื ืืช ื”ื—ื•ืคืฉ ืฉืืชื ืจื•ืฆื™ื. ื™ืฉ ื”ืจื‘ื” ืžืงื•ืžื•ืช ื›ืืœื”. ื”ืคื™ืชืจื•ืŸ ื”ื•ื ืœื”ืชื—ื™ืœ ืžืื–ื•ืจื™ื ืื—ืจื™ื ื‘ื—ื™ื™ื ืฉืื•ืœื™ ื‘ื”ื ื™ืฉ ืœื›ื ื™ื•ืชืจ ื—ื•ืคืฉ - ืขื ื”ืžืฉืคื—ื”, ื‘ืฉืขื•ืช ื”ืคื ืื™, ื‘ืชื—ื‘ื™ื‘ื™ื. ืื ื™ืฉ ืœื›ื ื™ืœื“ื™ื ืงื˜ื ื™ื ืชื•ื›ืœื• ืœื”ื—ืœื™ื˜ ืฉืคืขื ื‘ืฉื‘ื•ืข ืชืืกืคื• ืืช ื”ื™ืœื“ื™ื ืžื”ืžืกื’ืจืช ืœืคืขื™ืœื•ืช ืงืฆืจื” ืฉืขื“ื™ื™ืŸ ืœื ื ื™ืกื™ืชื ืื™ืชื ื•ืฉื”ื ืื•ืœื™ ืœื ื™ืื”ื‘ื•. ืื• ืื ืืชื ืื•ื”ื‘ื™ื ืกืคื•ืจื˜ ืชื•ื›ืœื• ืœื”ื—ืœื™ื˜ ืฉืคืขื ื‘ืฉื‘ื•ืข ืื• ืฉื‘ื•ืขื™ื™ื ืชื ืกื• ืกื•ื’ ืื™ืžื•ืŸ ื—ื“ืฉ ืฉืขื•ื“ ืœื ื ื™ืกื™ืชื ื•ืื•ืœื™ ืœื ืชืื”ื‘ื•. ืžื” ืฉื™ืคื” ื‘ืจืขื™ื•ื ื•ืช ื–ื” ืฉื›ื›ืœ ืฉืื ื—ื ื• ื ื•ืชื ื™ื ืœื”ื ืืช ื”ืžืงื•ื ื•ื”ื–ืžืŸ, ื›ื›ืœ ืฉืื ื—ื ื• ืœื ืžื•ื“ื“ื™ื ืื•ืชื, ื•ื›ื›ืœ ืฉืื ื—ื ื• ืžื ืกื™ื ื™ื•ืชืจ ืžื”ื, ื›ืš ื™ื•ืชืจ ืงืœ ืœื—ืฉื•ื‘ ืขืœ ืจืขื™ื•ื ื•ืช ื—ื“ืฉื™ื. ื•ืœืื˜ ืœืื˜ ืžืขื’ืœ ื”ืงืกืžื™ื ืžืชืจื—ื‘ ื•ืื ื—ื ื• ืžื’ืœื™ื ืืช ื”ื›ื™ืฃ ื‘ื™ื™ืฉื•ื ืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ืขื•ื‘ื“ื™ื ื‘ื™ื•ืชืจ ื•ื™ื•ืชืจ ืชื—ื•ืžื™ื ื‘ื—ื™ื™ื.

ToCode
1 419
# ืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ืขื•ื‘ื“ื™ื ืื ื”ืงืฉื‘ืชื ื™ื•ืชืจ ืžื“ื™ ื‘ื‘ื™ืช ืกืคืจ ืืชื ืขืœื•ืœื™ื ืœื—ืฉื•ื‘ ืฉืœืจืขื™ื•ื ื•ืช ื™ืฉ ืขืจืš ืจืง ืื ื”ื ืขื•ื‘ื“ื™ื. ื”ืฆื™ื•ืŸ ืฉืชืงื‘ืœื• ื‘ืžื‘ื—ืŸ ื ืงื‘ืข ืœืคื™ ืžืกืคืจ ื”ืชืฉื•ื‘ื•ืช ื”ื ื›ื•ื ื•ืช ืฉื›ืชื‘ืชื, ื•ืœื ืœืคื™ ืžืกืคืจ ื”ืชืฉื•ื‘ื•ืช ื”ื›ื•ืœืœ ืฉืขื ื™ืชื ืœืฉืืœื” (ื•ื‘ื›ืœืœ ืื ื™ ืœื ื—ื•ืฉื‘ ืฉืžื™ืฉื”ื• ื‘ื‘ื™ืช ืกืคืจ ืื™ ืคืขื ื‘ื™ืงืฉ ืžืžื ื™ ืœืขื ื•ืช ื›ืžื” ืชืฉื•ื‘ื•ืช ืฉื•ื ื•ืช ืœืื•ืชื” ืฉืืœื”). ื–ื” ื›ืื™ืœื• ื”ืžื˜ืจื” ื”ื™ื—ื™ื“ื” ืฉื ื”ื™ืชื” ืœื”ื›ื™ืจ ืืช ื”ืจืขื™ื•ืŸ ืฉืขื•ื‘ื“. ื”ื’ื™ืข ื”ื–ืžืŸ ืฉื ืชื’ื‘ืจ ืขืœ ื”ืฉืงืจ ื”ื–ื”. ืจืขื™ื•ื ื•ืช ืฉืœื ืขื•ื‘ื“ื™ื ื”ื ื‘ืขืœื™ ืขืจืš, ื”ืจื‘ื” ืคืขืžื™ื ื’ื“ื•ืœ ื‘ื”ืจื‘ื” ืžืจืขื™ื•ื ื•ืช ืฉืขื•ื‘ื“ื™ื. ื‘ืจื•ื‘ ื”ืžืงืฆื•ืขื•ืช ื”ื™ืฆื™ืจืชื™ื™ื ื”ื™ื•ื, ื•ื‘ืชื›ื ื•ืช ื‘ืžื™ื•ื—ื“, ืจืขื™ื•ื ื•ืช ืฉืœื ืขื•ื‘ื“ื™ื ื—ื™ื™ื‘ื™ื ืœื”ื™ื•ืช ื—ืœืง ืžืจื›ื–ื™ ืžื”ื—ื™ื™ื ืฉืœื ื•. ืื ืชื‘ืงืฉื• ืžืžื ื™ ืœื›ืชื•ื‘ ืชื•ื›ื ื™ืช ืฉืžื“ืคื™ืกื” ืขืœ ื”ืžืกืš Hello World ื‘ืฉืคืช ืชื›ื ื•ืช ืฉืื ื™ ืžื›ื™ืจ ืื ื™ ื‘ื˜ื•ื— ืฉืื“ืข ืื™ืš ืœืขืฉื•ืช ืืช ื–ื”. ืื•ืชื• ื“ื‘ืจ ืื ืื ืกื” ืœื›ืชื•ื‘ ืžืฉื—ืง ื˜ื˜ืจื™ืก. ืื‘ืœ ืื ืืฆื˜ืจืš ืœืžืžืฉ ืœืงื•ื— git ืžืืคืก ื–ื” ื›ื‘ืจ ื”ื•ืœืš ืœื”ื™ื•ืช ืงืฉื”. ื™ืฉ ืœื™ ืจืขื™ื•ืŸ ื›ืœืœื™ ืื™ืš ืœื”ืชื—ื™ืœ ืื‘ืœ ืื ื™ ืœื ื™ื•ื“ืข ืื ื”ื•ื ื™ืขื‘ื•ื“, ื•ืื ื™ ื“ื™ ื‘ื˜ื•ื— ืฉื—ืœืง ืžื”ื“ื‘ืจื™ื ืฉืืขืฉื” ืœื ื™ืขื‘ื“ื• ื‘ืคืขื ื”ืจืืฉื•ื ื”. ื”ืกื™ื‘ื” ื”ื™ื—ื™ื“ื” ืฉืื ื™ ื™ื›ื•ืœ ืœื›ืชื•ื‘ ื‘ืงืœื•ืช ื˜ื˜ืจื™ืก ืื‘ืœ ืœื ื‘ื˜ื•ื— ืื™ืš ืœื›ืชื•ื‘ ื’ื™ื˜ ื”ื™ื ืฉื›ื‘ืจ ื›ืชื‘ืชื™ ืžืฉื—ืงื™ ื˜ื˜ืจื™ืก ื‘ื›ืžื” ืฉืคื•ืช, ื•ืืฃ ืคืขื ืœื ื›ืชื‘ืชื™ ืœืงื•ื— ื’ื™ื˜. ื”ื“ืจืš ืงื“ื™ืžื” ืœื›ืชื•ื‘ ื“ื‘ืจื™ื ืฉืขื•ื“ ืœื ื›ืชื‘ืชื™ ื‘ืขื‘ืจ ืขื•ื‘ืจืช ื‘ื”ื›ืจื— ื“ืจืš ืจืขื™ื•ื ื•ืช ืฉืขื•ื“ ืœื ื ื™ืกื™ืชื™, ื•ืฉืื•ืœื™ ืœื ื™ืขื‘ื“ื•. ืื•ืชื ืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ื™ืขื‘ื“ื• ื”ื ื”ืžืคืชื— ืœื”ืชืงื“ืžื•ืช. ื™ื•ืชืจ ืžื–ื”, ืื ื”ื“ื‘ืจ ื”ื™ื—ื™ื“ ืฉืื ื™ ืขื•ืฉื” ื‘ืขื‘ื•ื“ื” ื”ื•ื ืœื›ืชื•ื‘ ืจืง ื“ื‘ืจื™ื ืฉืื ื™ ืžื›ื™ืจ, ืžื”ืจ ืžืื•ื“ ื”ืขื‘ื•ื“ื” ืชื”ื™ื” ืžืื•ื“ ืžืฉืขืžืžืช. ืืฃ ืื—ื“ ืœื ืจื•ืฆื” ืœื”ื™ืฉืืจ ืขืฉืจ ืฉื ื™ื ื‘ืžืงื•ื ืฉื‘ื• ื›ืœ ื‘ื•ืงืจ ื›ื•ืชื‘ื™ื ืžื—ื“ืฉ ื˜ื˜ืจื™ืก. ืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ื™ืขื‘ื“ื• ืžื•ืกื™ืคื™ื ืขื ื™ื™ืŸ ื•ืื•ืฉืจ ืœื—ื™ื™ื, ื•ื–ื” ื—ืœืง ืžื”ื“ื‘ืจื™ื ืฉืื ื—ื ื• ืฆืจื™ื›ื™ื ื›ื‘ื ื™ ืื“ื. ื•ื‘ื›ืœ ื–ืืช ืจื‘ื™ื ืžืื™ืชื ื• ื—ื•ืฉืฉื™ื ืžืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ื™ืขื‘ื“ื• ื•ืœื ื‘ื˜ื•ื—ื™ื ืื™ืš ืœื”ื’ื™ืข ืืœื™ื”ื ื•ืœืฉืœื‘ ืื•ืชื ื‘ื—ื™ื™ ื”ื™ื•ื ื™ื•ื. ื”ื ื” ืฉืœื•ืฉื” ืžืคืชื—ื•ืช ืฉื™ืขื–ืจื• ืœื ื• ืœืฉืœื‘ ืจืขื™ื•ื ื•ืช ื›ืืœื” ื‘ื—ื™ื™ ื”ื™ื•ื ื™ื•ื: ## ืจืขื™ื•ื ื•ืช ืฉืœื ืขื•ื‘ื“ื™ื ืฆืจื™ื›ื™ื ื–ืžืŸ ื”ืžืคืชื— ื”ืจืืฉื•ืŸ ื”ื•ื ื”ืžืกื’ืจืช - ื”ืžืงื•ื ื•ื”ื–ืžืŸ, ืฉื‘ื• ืžื•ืชืจ ืœื ืกื•ืช ื“ื‘ืจื™ื ืฉืœื ื‘ื˜ื•ื— ื™ืขื‘ื“ื•. ืื ืชืœืžื™ื“ ืฉื•ืืœ ืื•ืชื™ ืฉืืœื” ื‘ืงื•ืจืก ื”ื•ื ืžืฆืคื” ืœืงื‘ืœ ืชืฉื•ื‘ื” ืืžื™ื ื”. ื–ืืช ืœื ืกื™ื˜ื•ืืฆื™ื” ืฉื‘ื” ืจืฆื•ื™ ืœื ื—ืฉ ืจืขื™ื•ืŸ ืฉืœื ื‘ื“ืงืชื™. ืืคื™ืœื• ื‘ืฉืืœื•ืช ืฉืื ื™ ืœื ื™ื•ื“ืข ืขื“ื™ืฃ ืœื”ื’ื™ื“ ืืช ื–ื” ื‘ืฆื•ืจื” ื™ืฉื™ืจื”, ืœื”ื’ื™ื“ ืฉืื‘ื“ื•ืง ื•ืœื—ื–ื•ืจ ืขื ืชืฉื•ื‘ื” ืฉืขื•ื‘ื“ืช. ืœืขื•ืžืช ื–ืืช ืื ืื ื™ ื™ื•ืฉื‘ ื‘ื‘ื™ืช ื•ื‘ื•ื ื” ืœืงื•ื— ื’ื™ื˜, ืื™ืŸ ืฉื•ื ื‘ืขื™ื” ืฉืื ื™ ืžื ืกื” ืจืขื™ื•ืŸ, ื”ืจืขื™ื•ืŸ ื”ื–ื” ืœื ืžืฆืœื™ื—. ืืคืฉืจ ืœืžื—ื•ืง ืืช ื›ืœ ื”ืงื•ื“ ื•ืœื”ืชื—ื™ืœ ืžื—ืจ ืฉื•ื‘ ื‘ื›ื™ื•ื•ืŸ ืื—ืจ. ื‘ืฉื‘ื™ืœ ืœืฉืœื‘ ืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ืขื•ื‘ื“ื™ื ื‘ื—ื™ื™ื ืฉืœื ื• ืื ื—ื ื• ืจื•ืฆื™ื ืœืชืช ืœื”ื ืืช ื”ืžืงื•ื ื•ื”ื–ืžืŸ ืฉื‘ื• ื”ื ื™ื•ื›ืœื• ืœื”ืจื’ื™ืฉ ื‘ื ื•ื—, ื•ืื ื—ื ื• ื ื•ื›ืœ ืœื”ืจื’ื™ืฉ ืื™ืชื ื‘ื ื•ื—. ## ืจืขื™ื•ื ื•ืช ืฉืœื ืขื•ื‘ื“ื™ื ืœื ืื•ื”ื‘ื™ื ืฉืžื•ื“ื“ื™ื ืื•ืชื ื”ืžืคืชื— ื”ืฉื ื™ ื”ื•ื ื”ืžื˜ืจื”, ืื• ืžื” ืื ื™ ืžื ืกื” ืœื”ืฉื™ื’ ืขื ืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ืขื•ื‘ื“ื™ื. ืื ื”ื’ื™ืฉื” ืฉืœื™ ื”ื™ื ืฉื–ืžืŸ ืฉืžื•ืฉืงืข ื‘ื›ืชื™ื‘ืช ืงื•ื“ ื—ื™ื™ื‘ "ืœื”ื—ื–ื™ืจ ืืช ื”ื”ืฉืงืขื”" ืื– ื™ื”ื™ื” ืœื™ ืงืฉื” ืžืื•ื“ ืœื‘ื–ื‘ื– 3 ืฉืขื•ืช ืขืœ ื ื™ืกื™ื•ืŸ ืœื‘ื ื•ืช ืœืงื•ื— ื’ื™ื˜ ืฉืœื ื™ืขื‘ื•ื“. ืกื™ื›ื•ื™ ื˜ื•ื‘ ืฉืื ื™ ืืคื™ืœื• ืœื ืืชื—ื™ืœ ื›ื™ ืื™ื–ื” ื”ื—ื–ืจ ื”ืฉืงืขื” ื‘ื›ืœืœ ืืคืฉืจ ืœืงื‘ืœ ืžืคืจื•ื™ืงื˜ ื›ื–ื”. ื•ื‘ื“ื™ื•ืง ืžื”ื’ื™ืฉื” ื”ื‘ื™ืช ืกืคืจื™ืช ื”ื–ืืช ืื ื—ื ื• ืจื•ืฆื™ื ืœื”ื™ืคืจื“. ืžื™ืžื•ืฉ ืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ื™ืขื‘ื“ื• ื‘ืชื•ืš ื”ืžืงื•ื ื•ื”ื–ืžืŸ ืฉืžื•ืงื“ืฉ ืœื”ื ื”ื•ื ื”ืžื˜ืจื”. ืื ื™ ื‘ื•ื ื” ืืช ื–ื” ื›ื“ื™ ืœื‘ื ื•ืช ืืช ื–ื”, ื•ืื ื‘ืกื•ืฃ ื’ื ื™ืฆื ืคืจื•ื™ืงื˜ ื–ื” ืื—ืœื”, ืื‘ืœ ื’ื ืื ืœื ื–ื” ืžืžืฉ ื‘ืกื“ืจ. ื”ื‘ืœื•ื’ ื”ื–ื” ื”ื•ื ื“ื•ื’ืžื” ืœืžืฉื—ืง ืฉืœื™ ืขื ืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ืขื•ื‘ื“ื™ื. ืื ื™ ื›ื•ืชื‘ ื›ืœ ื™ื•ื, ื—ืœืง ืžื”ืคื•ืกื˜ื™ื ืžื“ื‘ืจื™ื ืœืื ืฉื™ื ื•ื—ืœืง ืœื, ื•ื–ื” ืžืขื•ืœื”. ืื ื™ ืœื ืžืกืชื›ืœ ื›ืžื” ืื ืฉื™ื ื ื›ื ืกื™ื ืœืงืจื•ื ืคื•ืกื˜ ืื• ืžืฉืชืคื™ื ืื•ืชื• ื›ื™ ื–ืืช ืœื ื”ืžื˜ืจื”. ื”ื›ืชื™ื‘ื” ื”ื™ื ื”ืžื˜ืจื” ืฉืœ ืขืฆืžื”. ## ืืคืฉืจ (ื•ื›ื“ืื™) ืœื™ื™ืฉื ืจืขื™ื•ื ื•ืช ืฉืœื ืขื•ื‘ื“ื™ื ื‘ื›ืœ ืชื—ื•ื ื‘ื—ื™ื™ื ืชืจื’ื•ืœ ืขื•ื–ืจ, ื•ื’ื ืฉื™ืœื•ื‘ ืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ืขื•ื‘ื“ื™ื ื‘ื—ื™ื™ื ืฉืœื ื• ื–ื• ืžื™ื•ืžื ื•ืช ืฉื“ื•ืจืฉืช ืชืจื’ื•ืœ. ื™ื›ื•ืœ ืœื”ื™ื•ืช ืฉื‘ืขื‘ื•ื“ื” ื”ืžืงืฆื•ืขื™ืช ืฉืœื›ื ืืชื ืœื ืจื•ืื™ื ืขื›ืฉื™ื• ืฉื•ื ืžืงื•ื ืฉื‘ื• ืืคืฉืจ ืœื ืกื•ืช ืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ืขื•ื‘ื“ื™ื. ื™ื›ื•ืœ ืœื”ื™ื•ืช ืฉืืชื ืžืจื’ื™ืฉื™ื ืฉืžื•ื“ื“ื™ื ื›ืœ ืฆืขื“ ืฉืœื›ื ื•ืฉืืชื ื‘ืืจื’ื•ืŸ ืฉืœื ืžืืคืฉืจ ืœื›ื ืืช ื”ื—ื•ืคืฉ ืฉืืชื ืจื•ืฆื™ื. ื™ืฉ ื”ืจื‘ื” ืžืงื•ืžื•ืช ื›ืืœื”. ื”ืคื™ืชืจื•ืŸ ื”ื•ื ืœื”ืชื—ื™ืœ ืžืื–ื•ืจื™ื ืื—ืจื™ื ื‘ื—ื™ื™ื ืฉืื•ืœื™ ื‘ื”ื ื™ืฉ ืœื›ื ื™ื•ืชืจ ื—ื•ืคืฉ - ืขื ื”ืžืฉืคื—ื”, ื‘ืฉืขื•ืช ื”ืคื ืื™, ื‘ืชื—ื‘ื™ื‘ื™ื. ืื ื™ืฉ ืœื›ื ื™ืœื“ื™ื ืงื˜ื ื™ื ืชื•ื›ืœื• ืœื”ื—ืœื™ื˜ ืฉืคืขื ื‘ืฉื‘ื•ืข ืชืืกืคื• ืืช ื”ื™ืœื“ื™ื ืžื”ืžืกื’ืจืช ืœืคืขื™ืœื•ืช ืงืฆืจื” ืฉืขื“ื™ื™ืŸ ืœื ื ื™ืกื™ืชื ืื™ืชื ื•ืฉื”ื ืื•ืœื™ ืœื ื™ืื”ื‘ื•. ืื• ืื ืืชื ืื•ื”ื‘ื™ื ืกืคื•ืจื˜ ืชื•ื›ืœื• ืœื”ื—ืœื™ื˜ ืฉืคืขื ื‘ืฉื‘ื•ืข ืื• ืฉื‘ื•ืขื™ื™ื ืชื ืกื• ืกื•ื’ ืื™ืžื•ืŸ ื—ื“ืฉ ืฉืขื•ื“ ืœื ื ื™ืกื™ืชื ื•ืื•ืœื™ ืœื ืชืื”ื‘ื•. ืžื” ืฉื™ืคื” ื‘ืจืขื™ื•ื ื•ืช ื–ื” ืฉื›ื›ืœ ืฉืื ื—ื ื• ื ื•ืชื ื™ื ืœื”ื ืืช ื”ืžืงื•ื ื•ื”ื–ืžืŸ, ื›ื›ืœ ืฉืื ื—ื ื• ืœื ืžื•ื“ื“ื™ื ืื•ืชื, ื•ื›ื›ืœ ืฉืื ื—ื ื• ืžื ืกื™ื ื™ื•ืชืจ ืžื”ื, ื›ืš ื™ื•ืชืจ ืงืœ ืœื—ืฉื•ื‘ ืขืœ ืจืขื™ื•ื ื•ืช ื—ื“ืฉื™ื. ื•ืœืื˜ ืœืื˜ ืžืขื’ืœ ื”ืงืกืžื™ื ืžืชืจื—ื‘ ื•ืื ื—ื ื• ืžื’ืœื™ื ืืช ื”ื›ื™ืฃ ื‘ื™ื™ืฉื•ื ืจืขื™ื•ื ื•ืช ืฉืœื ื‘ื˜ื•ื— ืขื•ื‘ื“ื™ื ื‘ื™ื•ืชืจ ื•ื™ื•ืชืจ ืชื—ื•ืžื™ื ื‘ื—ื™ื™ื.

ToCode
1 419
# ื›ื›ื” ืขื•ืฉื™ื ื“ื‘ืจื™ื ืคื” ืืฆืœื ื• ืžืชื›ื ืชื™ื ืจื‘ื™ื ืžืจื’ื™ืฉื™ื ืฉื”ื™ืชืจื•ืŸ ื”ื’ื“ื•ืœ ื‘ืคืจื™ื™ืžื•ื•ืจืง ื”ื•ื ืฉื”ื™ื ืขื•ื ื” ืขืœ ื”ืฉืืœื” "ืื™ืš ืขื•ืฉื™ื ื“ื‘ืจื™ื ืคื” ื‘ืคืจื•ื™ืงื˜". ืžื” ืฆืจื™ืš ืœืขืฉื•ืช ื‘ืฉื‘ื™ืœ ืœื”ื•ืกื™ืฃ ืคื™ืฆ'ืจ, ืžื” ื”ืžืงื•ื ื”ื ื›ื•ืŸ ืœืชืงืŸ ื‘ืื’, ืื™ืš ื›ื•ืชื‘ื™ื ืืช ื”ื‘ื“ื™ืงื•ืช ื•ื”ืชื™ืขื•ื“. ืขื ืคืจื™ื™ืžื•ื•ืจืง ื˜ื•ื‘ ืžืชื›ื ืชื™ื ื—ื“ืฉื™ื ื ื›ื ืกื™ื ืžื”ืจ ืœืคืจื•ื™ืงื˜ ื•ื™ื•ื“ืขื™ื ื‘ื“ื™ื•ืง ืื™ืš ืฆืจื™ืš ืœื›ืชื•ื‘. ื•ืจื‘ื™ื ืื—ืจื™ื ืžืจื’ื™ืฉื™ื ืฉืคืจื™ื™ืžื•ื•ืจืง ืคื•ื’ืข ื‘ืชื—ื–ื•ืงื” ืœืื•ืจืš ื–ืžืŸ. ืฉืฉื™ืžื•ืฉ ื‘ืคืจื™ื™ืžื•ื•ืจืง ืžืืคืฉืจ ืœื‘ื ื•ืช ื”ืชื—ืœื” ืฉืœ ืžืขืจื›ืช ืžื”ืจ, ืื‘ืœ ื›ื›ืœ ืฉื”ืคืจื•ื™ืงื˜ ื’ื“ืœ ื”ืคืจื™ื™ืžื•ื•ืจืง (ื›ืœ ืคืจื™ื™ืžื•ื•ืจืง) ื™ื”ืคื•ืš "ืงื˜ืŸ ืžื“ื™" ืขืœ ื”ืคืจื•ื™ืงื˜ ื•ื‘ื”ื›ืจื— ืคื™ืฆ'ืจื™ื ืžืชืงื“ืžื™ื ื™ื“ืจืฉื• ื”ืจื‘ื” ื™ื•ืชืจ ืžืืžืฅ. ืœื ืจืง ื–ื”, ืืœื ืฉืฉื™ื“ืจื•ื’ ืœืคื™ ืœื•ื— ื”ื–ืžื ื™ื ืฉืœ ื”ืคืจื™ื™ืžื•ื•ืจืง ืขืœื•ืœ ืœื’ื–ื•ืœ ื–ืžืŸ ืฉื”ื™ื” ืขื“ื™ืฃ ืœื”ืฉืงื™ืข ื‘ืงื•ื“ ืฉืœืš. ืื•ืชื ืžืชื›ื ืชื™ื ืžืจื’ื™ืฉื™ื ืฉื›ืฉื”ืงื•ื“ ื”ื•ื 100% ืฉืœื ื• ืื– ืื ื—ื ื• ื‘ืžืงื•ื ื”ืจื‘ื” ื™ื•ืชืจ ื˜ื•ื‘ ืœื”ื—ืœื™ื˜ ืื™ืš ืขื•ืฉื™ื ื“ื‘ืจื™ื ืคื” ื‘ืคืจื•ื™ืงื˜. ื”ืืžืช ื”ื™ื ืฉื”ืคืจื™ื™ืžื•ื•ืจืง ื”ื•ื ืœื ื”ืขื ื™ื™ืŸ ืคื”. ืœื›ืœ ืคืจื™ื™ืžื•ื•ืจืง ืฉืชื™ืงื—ื• ื™ืฉ ืžืกืคื™ืง ืคืจื•ื™ืงื˜ื™ื ืฉื”ืฉืชืžืฉื• ื‘ื” ื•ื”ืกืชื‘ื›ื•. ื™ืฉ ืžืกืคื™ืง ืžืชื›ื ืชื™ื ืฉื”ื’ื™ืขื• ืœืคืจื•ื™ืงื˜ ื•ืฉื‘ืจื• ื—ื•ืงื™ื ืฉืœ ื”ืคืจื™ื™ืžื•ื•ืจืง ื‘ืœื™ ืœื“ืขืช ื‘ื›ืœืœ ืฉื–ื” ืžื” ืฉื”ื ืขื•ืฉื™ื, ื•ื”ืžื•ืŸ ืžืงื•ืžื•ืช ื‘ื”ื ื‘ืืžืช ื”ื™ื” ืฆืจื™ืš ืขืงืจื•ื ื•ืช ื‘ืกื™ืกื™ื™ื ื‘ืคืจื™ื™ืžื•ื•ืจืง ื›ื“ื™ ืœื”ืชืื™ื ืœืคืจื•ื™ืงื˜. ื”ืคืจื™ื™ืžื•ื•ืจืง ืœื ืžื‘ื˜ื™ื— ืฉื“ื‘ืจื™ื ื™ื‘ื•ืฆืขื• ื‘ืฆื•ืจื” ืžืกื•ื™ืžืช. ื•ืžืฆื“ ืฉื ื™ ื›ืฉืื™ืŸ ืคืจื™ื™ืžื•ื•ืจืง ืคืจื•ื™ืงื˜ื™ื ืžื•ืจื›ื‘ื™ื ื”ื•ืคื›ื™ื ืืงืœืงื˜ื™ื™ื, ืžืชื›ื ืชื™ื ื—ื“ืฉื™ื ื ื›ื ืกื™ื ื•ืžื‘ื™ืื™ื ืืช ื”ืกื’ื ื•ืŸ ืฉืœื”ื ื•ืœืื•ืจืš ื–ืžืŸ ืงืฉื” ืœื”ื›ื ื™ืก ืื ืฉื™ื ื•ื’ื ืคืจื•ื™ืงื˜ื™ื ืืœื” ื”ื•ืคื›ื™ื ืœื›ื“ื•ืจ ื‘ื•ืฅ ื’ื“ื•ืœ. ืคืจื™ื™ืžื•ื•ืจืง ื”ื•ื ืœื ื”ื‘ืขื™ื” ื•ื’ื ืœื ื”ืคื™ืชืจื•ืŸ. ื‘ืžืงื•ื ืœื”ืชืžืงื“ ื‘ื›ืœื™ื ื›ื“ืื™ ืœื”ืชื—ื™ืœ ื‘ืชืฉื•ื‘ื” ืœืฉืืœื” "ืื™ืš ืขื•ืฉื™ื ื“ื‘ืจื™ื ืคื” ืืฆืœื ื•". ื•ื›ืŸ ืจืฆื•ื™ ืœื”ื™ื•ืช ืกืคืฆื™ืคื™ื™ื ื•ื’ื ืœื›ืชื•ื‘ ืืช ื–ื”. ืชื•ื›ืœื• ืœื”ื•ืกื™ืฃ ืœืื•ืชื• ืžืกืžืš ื“ื•ื’ืžืื•ืช ืžืงืจื” ืฉืœ ืฉื™ื ื•ื™ื™ื ืื• ืชื™ืงื•ื ื™ื ืฉื”ื•ื›ื ืกื•, ื”ืชืœื‘ื˜ื•ื™ื•ืช ื‘ื™ืŸ ื›ืžื” ืื•ืคืฆื™ื•ืช ื•ื”ืกื‘ืจ ืœืžื” ื ื‘ื—ืจื” ื”ืื•ืคืฆื™ื” ืฉื ื‘ื—ืจื”. ื•ื›ืŸ ื™ืฉ ืœื”ืฉืื™ืจ ืืช ื”ืžืกืžืš ืื• ืื•ืกืฃ ื”ืžืกืžื›ื™ื ื”ื–ื” ื—ื™ ืขืœ ื™ื“ื™ ืขื“ื›ื•ืŸ ืฉื•ื˜ืฃ ืฉืœื•. ื”ืžื˜ืจื” ืฉืœื ื• ื”ื™ื ืฉืชื”ื™ื” ืœื›ืœ ืžืชื›ื ืช ื•ืžืชื›ื ืชืช ื‘ืฆื•ื•ืช ืชืฉื•ื‘ื•ืช ื–ืžื™ื ื•ืช ืœืฉืืœื” "ืื™ืš ืขื•ืฉื™ื ื“ื‘ืจื™ื ืคื” ื‘ืคืจื•ื™ืงื˜", ื•ืฉื”ืชืฉื•ื‘ื•ืช ื”ืืœื” ื™ื”ื™ื• ื›ืžื” ืฉื™ื•ืชืจ ืขืงื‘ื™ื•ืช.

ToCode
1 419
# ื”ืžืงื•ื ื”ื ื›ื•ืŸ ืœืชื™ืงื•ืŸ ื›ืฉืืชื ืจื•ืื™ื ืกืจื˜ ื‘ื™ื•ื˜ื™ื•ื‘ ื•ืจื•ืฆื™ื ืœื”ื’ื‘ื™ืจ ืืช ื”ื•ื•ืœื™ื•ื ื™ืฉ ืฉื ื™ ื›ืคืชื•ืจื™ื ืฉืืคืฉืจ ืœืœื—ื•ืฅ ืขืœื™ื”ื: ื™ืฉ ืืช ื›ืคืชื•ืจ ื”ื•ื•ืœื™ื•ื ื”ืงื˜ืŸ ืœื™ื“ ื”ืกืจื˜, ื•ืืช ื›ืคืชื•ืจ ื”ื•ื•ืœื™ื•ื ื”ืจืืฉื™ ืฉืœ ื”ืžื—ืฉื‘. ื”ื’ื‘ื™ืจื• ืืช ื”ืœื ื ื›ื•ืŸ ื•ื”ืกืจื˜ ืื•ืžื ื ื™ืชื—ื™ืœ ืœื“ื‘ืจ ื—ื–ืง ื™ื•ืชืจ, ืื‘ืœ ื’ื ื”ื ื•ื˜ื™ืคื™ืงืฆื™ื” ื”ื‘ืื” ืฉืชืงื‘ืœื• ืขืœื•ืœื” ืœืขืฉื•ืช ืจืขืฉ ื™ื•ืชืจ ืžื‘ื”ื™ืœ ืžืžื” ืฉืืชื ืจื’ื™ืœื™ื. ื•ื›ืŸ ื”ื–ืŸ ืฉืœ ืคื™ื™ืชื•ืŸ ืžืฉืงืจ. ื›ืฉื”ื ื›ื•ืชื‘ื™ื: > There should be one-- and preferably only one --obvious way to do it. ื”ื ืœื ื‘ืืžืช ืžืชื›ื•ื•ื ื™ื ืœื–ื”, ื›ื™ ื’ื ื‘ืคื™ื™ืชื•ืŸ ื•ื’ื ื‘ื›ืœ ืฉืคืช ืชื›ื ื•ืช ืฉื ื‘ื—ืจ, ื‘ื“ื™ื•ืง ื›ืžื• ื‘ื•ื•ืœื™ื•ื ื‘ื™ื•ื˜ื™ื•ื‘, ื™ืฉ ื”ืจื‘ื” ื“ืจื›ื™ื ืœืขืฉื•ืช ื›ืœ ื“ื‘ืจ ื•ืœื›ืœ ื“ืจืš ื™ืฉ ืืช ื”ื ื™ื•ืื ืกื™ื ืฉืœื”. ื•ื‘ื“ื™ื•ืง ื›ืžื• ื‘ื•ื•ืœื™ื•ื ื‘ื™ื•ื˜ื™ื•ื‘, ื‘ืื•ืชื• ืจื’ืข ืฉื”ืกืจื˜ ื—ืœืฉ ืœื ืœื’ืžืจื™ ื‘ืจื•ืจ ืžื” ื”ื”ื‘ื“ืœ ื‘ื™ืŸ ื”ื“ืจื›ื™ื. ืฉื ื™ ื”ื›ืคืชื•ืจื™ื ืขื•ืฉื™ื ืจื•ืฉื ืฉืœ ืœื”ื’ื‘ื™ืจ. ื–ื• ืชื”ื™ื” ื˜ืขื•ืช "ืœื”ืชืขืœื" ืžืื•ืคืฆื™ื” ืื—ืช, ืœื”ื’ื™ื“ "ืื ื™ ืชืžื™ื“ ืžื’ื‘ื™ืจ ืื• ืžื ืžื™ืš ื“ืจืš ื”ื›ืคืชื•ืจ ืฉืœื™ื“ ื”ืกืจื˜" (ืื• ื”ื›ืœืœื™ ืฉืœ ื”ืžื—ืฉื‘). ื”ืžื˜ืจื” ืฉืœื ื• ื›ืื ืฉื™ ืžืงืฆื•ืข ื”ื™ื ืœื—ืคืฉ ืืช ื”ืคืจื˜ื™ื. ืœื”ื‘ื™ืŸ ื›ืžื” ืฉื™ื•ืชืจ ื“ืจื›ื™ื ื‘ื”ืŸ ืืคืฉืจ ืœืชืงืŸ ื‘ืื’ ืื• ืœื‘ื ื•ืช ืคื™ืฆ'ืจ, ืœื”ื‘ื™ืŸ ืืช ื”ื”ื‘ื“ืœื™ื ื”ื“ืงื™ื ื‘ื™ืŸ ื”ื“ืจื›ื™ื ื•ืœื‘ื—ื•ืจ ืืช ื”ื“ืจืš ืฉืžืชืื™ืžื” ื‘ื™ื•ืชืจ ืœืžืฆื‘ ื”ืžืกื•ื™ื ืฉืœื ื•. ื•ื›ืŸ ื‘ืžื—ืฉื‘ื” ืฉื ื™ื” ืขืœ ื”ื–ืŸ ืฉืœ ืคื™ื™ืชื•ืŸ, ืืคืฉืจ ืœื”ื’ื™ื“ ืฉื™ืฉ ื“ืจืš ื‘ืจื•ืจื” ืœืชืงืŸ ืืช ื”ื‘ืื’ ืื• ืœื‘ื ื•ืช ืืช ื”ืคื™ืฆ'ืจ ื‘ืชื•ืš Use Case ืกืคืฆื™ืคื™, ืื‘ืœ ื‘ืฉื‘ื™ืœ ืœืจืื•ืช ืื•ืชื” ืฆืจื™ืš ื”ืจื‘ื” ืขื‘ื•ื“ืช ืžื—ืงืจ (ืื• ืœื”ื™ื•ื•ืœื“ ื”ื•ืœื ื“ื™ื).

ToCode
1 419
# ื˜ื™ืค ืจื™ืืงื˜: ื˜ื™ืคื•ืœ ื‘ืื™ืจื•ืขื™ื ื’ืœื•ื‘ืืœื™ื™ื ื‘ืจื™ืืงื˜ ืžืื•ื“ ืงืœ ืœื˜ืคืœ ื‘ืื™ืจื•ืขื™ื ื‘ืจืžืช ื”ืงื•ืžืคื•ื ื ื˜ื” - ืฆืจื™ืš ืจืง ืœื”ื•ืกื™ืฃ ืžืืคื™ื™ืŸ on ื•ืฉื ื”ืื™ืจื•ืข. ืœืžืฉืœ ื‘ืฉื‘ื™ืœ ืœื˜ืคืœ ื‘ืื™ืจื•ืข keydown ืขืœ ืืœืžื ื˜ ื‘ืชื•ืš ืงื•ืžืคื•ื ื ื˜ืช ืจื™ืืงื˜ ืื ื™ ื™ื›ื•ืœ ืœื›ืชื•ื‘:
export default function App() {
  const [keys, setKeys] = useState("");

  function handleKeyDown(e) {
    setKeys(keys + e.key);
  }

  return (
    <div className="App" onKeyDown={handleKeyDown}>
      <h1>Hello CodeSandbox</h1>
      <h2>Start editing to see some magic happen!</h2>
      <p>{keys}</p>
      <input type="text" />
    </div>
  );
}
ืื‘ืœ ื–ื” ืจืง ื—ืฆื™ ืขื•ื‘ื“: ืงื•ื“ ื›ื–ื” ื™ืคืขื™ืœ ืืช ืคื•ื ืงืฆื™ื™ืช ื”ื˜ื™ืคื•ืœ ื‘ืื™ืจื•ืข ืจืง ืื ืžืฉื”ื• ื‘ืชื•ืš ื”ืงื•ืžืคื•ื ื ื˜ื” ื ืžืฆื ื‘ืคื•ืงื•ืก. ืœื›ืŸ ื›ืฉืชื™ื‘ืช ื”ื˜ืงืกื˜ ื‘ืคื•ืงื•ืก ื•ืื ื—ื ื• ื›ื•ืชื‘ื™ื ืฉื ื˜ืงืกื˜ ื’ื ืžืฉืชื ื” ื” state ื™ืชืขื“ื›ืŸ, ืื‘ืœ ื‘ืžืฆื‘ื™ื ืื—ืจื™ื ื›ืฉืื ื™ ืคืฉื•ื˜ ืœื•ื—ืฅ ืขืœ ื›ืคืชื•ืจื™ื ื”ืงื•ืžืคื•ื ื ื˜ื” ืชืชืขืœื ืžื”ืœื—ื™ืฆื•ืช. ื”ืคื™ืชืจื•ืŸ ื›ืืŸ ื”ื•ื ื”ืจื‘ื” ื™ื•ืชืจ ืงืœ ืžืžื” ืฉืืคืฉืจ ืœื“ืžื™ื™ืŸ. ืื ื—ื ื• ื”ืจื™ ื™ื•ื“ืขื™ื ืฉื›ืœ ืื™ืจื•ืข ื’ืœื•ื‘ืืœื™ ืžื’ื™ืข ืœ body, ื•ื‘ืคืจื˜ ืื™ืจื•ืขื™ keydown, ื›ืฉืื™ืŸ ืืฃ ืืœืžื ื˜ ื‘ืคื•ืงื•ืก ืคืฉื•ื˜ ืžื˜ื•ืคืœื™ื ื‘ืจืžืช ื” body. ื›ืœ ืžื” ืฉืฆืจื™ืš ืœื›ืŸ ื”ื•ื ืœื”ื•ืกื™ืฃ ืืคืงื˜ ืฉื™ืชื—ื‘ืจ ืœืื™ืจื•ืข ื” keydown ืฉืœ ื” body ื‘ื›ื ื™ืกื” ืœืžืกืš ืฉืœ ื”ืงื•ืžืคื•ื ื ื˜ื”, ื•ื™ืชื ืชืง ื‘ื™ืฆื™ืื”. ื‘ืฉื‘ื™ืœ ืฉื™ื”ื™ื” ื ื•ื— ืœื”ืฉืชืžืฉ ื‘ืงื•ื“ ืžื›ืœ ืžืงื•ื ื‘ื™ื™ืฉื•ื, ืื ื™ ืื•ื”ื‘ ืœื›ืชื•ื‘ ืงื•ื“ "ืืคืงื˜" ื›ื–ื” ื‘ืชื•ืš ืงื•ืžืคื•ื ื ื˜ื” ื ืคืจื“ืช, ื•ืื– ืœืฉืชื•ืœ ืืช ื”ืงื•ืžืคื•ื ื ื˜ื” ื‘ื›ืœ ืžืงื•ื ืฉืฆืจื™ืš ืื•ืชื”. ื•ื›ืŸ, ืืคืฉืจ ื’ื ืœื›ืชื•ื‘ Custom Hook ื•ืœืงื‘ืœ ื‘ื“ื™ื•ืง ืืช ืื•ืชื• ืืคืงื˜. ื–ื” ื”ืงื•ื“ ืื—ืจื™ ื”ืชื™ืงื•ืŸ:
import { useEffect, useState } from "react";
import "./styles.css";

function GlobalKeyboardEvents({ onKeyDown }) {
  useEffect(() => {
    document.body.addEventListener("keydown", onKeyDown);
    return function () {
      document.body.removeEventListener("keydown", onKeyDown);
    };
  }, [onKeyDown]);
  return <></>;
}

export default function App() {
  const [keys, setKeys] = useState("");

  function handleKeyDown(e) {
    setKeys(keys + e.key);
  }

  return (
    <div className="App" >
      <h1>Hello CodeSandbox</h1>
      <h2>Start editing to see some magic happen!</h2>
      <p>{keys}</p>
      <input type="text" />
      <GlobalKeyboardEvents onKeyDown={handleKeyDown} />
    </div>
  );
}
ื•ืืคืฉืจ ืœืฉื—ืง ืื™ืชื• ืœื™ื™ื‘ ื‘ืืจื’ื– ื”ื—ื•ืœ ื‘ืงื™ืฉื•ืจ: https://codesandbox.io/s/frosty-violet-llfo2g?file=/src/App.js:0-711

ToCode
1 419
# ืžื—ืฉื‘ื•ืช ืฉืžืื˜ื•ืช ืื•ืชื™ ืœืคื ื™ ืฉืขื–ื‘ืชื™ ืืช ื”ืขื‘ื•ื“ื” ื‘ืชื•ืจ ืฉื›ื™ืจ ื›ืฉื›ื‘ืจ ื”ื™ื™ืชื™ ืขื ืจื’ืœ ืื—ืช ื‘ื—ื•ืฅ, ืชืคืก ืื•ืชื™ ื—ื‘ืจ ืžื”ืขื‘ื•ื“ื” ืฉื ืœืฉื™ื—ื”. "ืื™ืš ื™ืฉ ืœืš ืื•ืžืฅ?" ื”ื•ื ืฉืืœ, "ื•ืื ื–ื” ืœื ื™ืฆืœื™ื—?", "ืืช ื”ื›ืกืฃ ืฉืชืคืกื™ื“ ืขืœ ื”ื ื™ืกื™ื•ืŸ ืื•ืœื™ ืœืขื•ืœื ืœื ืชืงื‘ืœ ื—ื–ืจื”. ืืชื” ืžืกื›ืŸ ืืช ื›ืœ ื”ืขืชื™ื“ ืฉืœืš". ืงืœ ืœืจืื•ืช ืื™ืš ืžื—ืฉื‘ื” ื›ื–ืืช ื™ื•ืฆืจืช ืคื—ื“ื™ื, ื—ืจื“ื•ืช, ื•ืžื•ืฆื™ืื” ืืช ื”ืžื•ื˜ื™ื‘ืฆื™ื” ืœื ืกื•ืช. ื•ื‘ืœื™ ืœื ืกื•ืช ืงืฉื” ืžืื•ื“ ืœื”ืฆืœื™ื—. (ืœืฉืžื—ืชื• ืฉืœ ืื•ืชื• ื—ื‘ืจ ื‘ืกื•ืคื• ืฉืœ ื“ื‘ืจ ื’ื ื”ื•ื ื”ืชื’ื‘ืจ ืขืœ ื”ืคื—ื“, ืคืชื— ืกื˜ืืจื˜-ืืค ืžืฉืœื• ื•ืœื ืžืกืชื›ืœ ืื—ื•ืจื”). "ืœืขื ื•ืช ื˜ืขื•ืช ื–ื” ื™ื•ืชืจ ื’ืจื•ืข ืžืœื ืœืขื ื•ืช ื›ืœื•ื" ื”ื™ื ืขื•ื“ ืžื—ืฉื‘ื” ืžื”ืกื•ื’ ื”ื–ื”, ื•ืื—ื•ืชื” ื”ืงื˜ื ื” "ืขื“ื™ืฃ ืœื—ื›ื•ืช ืขื“ ืฉืื”ื™ื” ื‘ื˜ื•ื—ื”". ืฉืชื™ ื”ืžื—ืฉื‘ื•ืช ื”ืืœื” ื™ื•ืฆืจื•ืช ืืงืœื™ื ืจื’ืฉื™ ืฉืœ ืคื—ื“ ื•ื™ื›ื•ืœื•ืช ืœื”ื›ืฉื™ืœ ืื•ืชืš ื‘ืจืื™ื•ืŸ ืขื‘ื•ื“ื” ื™ื•ืชืจ ืžื›ืœ ืฉืืœื” ืฉืœ ื”ืžืจืื™ื™ื ืช. ื™ื•ืชืจ ื’ืจื•ืข, ืื ืฉื™ื ืฉืžืืžื™ื ื™ื ื‘ื–ื” ื™ื•ื•ืชืจื• ืขืœ ืœืฉืœื•ื— ืงื•ืจื•ืช ื—ื™ื™ื ืœืžืฉืจื” ืื ื”ื ืœื ืขื•ื ื™ื ืขืœ ื›ืœ ื”ืงืจื™ื˜ืจื™ื•ื ื™ื ื‘ืžื•ื“ืขื” ื‘ 150%, ืžื” ืฉื›ื‘ืจ ืกื•ื’ืจ ืžืจืืฉ ื”ืจื‘ื” ื”ื–ื“ืžื ื•ื™ื•ืช. ืžืชื›ื ืชื™ื ื•ืžืชื›ื ืชื•ืช ืจื‘ื™ื ื‘ื˜ื•ื—ื™ื ืฉ"ื”ืœื™ืžื•ื“ ื”ื›ื™ ื˜ื•ื‘ ื”ื•ื ื“ืจืš ื›ืชื™ื‘ืช ืงื•ื“" ื•ืœื›ืŸ "ืงืจื™ืืช ืชื™ืขื•ื“ ืื• ืงื•ื“ ืžืงื•ืจ ืฉืœ ืกืคืจื™ื” ื–ื” ื‘ื–ื‘ื•ื– ื–ืžืŸ", ืื• ื”ืื—ื•ืช ื”ืงื˜ื ื” ืฉืœื” "ืœืžื™ ืฉืขื•ื‘ื“ ื‘ืžืฉืจื” ืžืœืื” ืื™ืŸ ื–ืžืŸ ืœืœืžื•ื“". ืืžื•ื ื•ืช ื›ืืœื” ื“ื•ื—ืคื•ืช ืื•ืชืš "ืœื ื•ื—" ื‘ื˜ื™ืงื˜ื•ืง ื‘ืžืงื•ื ืœืžืฆื•ื ื“ืจื›ื™ ืœื™ืžื•ื“ ื•ื”ืขืฉืจื” ืฉื™ืชืื™ืžื• ืœืœื•"ื– ืฉืœืš. ื•ืžืชื›ื ืชื•ืช ืจื‘ื•ืช ืžืจื’ื™ืฉื•ืช ืฉ"ื‘ืฉื‘ื™ืœ ืœื”ืชืงื“ื ืฆืจื™ืš ืœืชืช ื™ื•ืชืจ ืฉืขื•ืช" ื•ืฉ"ืžืฉืจื” ืขื ื™ื•ืชืจ ืื—ืจื™ื•ืช ืชื‘ื•ื ืขืœ ื—ืฉื‘ื•ืŸ ื“ื‘ืจื™ื ืื—ืจื™ื ืฉื—ืฉื•ื‘ื™ื ืœื™ ื‘ื—ื™ื™ื". ืขื ืืžื•ื ื” ื›ื–ืืช ืงืฉื” ืœื ืฆืœ ื”ื–ื“ืžื ื•ื™ื•ืช ื’ื ื›ืฉื”ืŸ ืžื•ืคื™ืขื•ืช, ื•ื”ืžื•ื— ื ื•ื˜ื” ืœื”ืชืžืงื“ ื‘ื“ื•ื’ืžืื•ืช ืฉืœ ืื ืฉื™ื ืฉืขื•ื‘ื“ื™ื ื™ื•ืชืจ ืžื“ื™ ืฉืขื•ืช ืขืœ ื—ืฉื‘ื•ืŸ ื”ื—ื™ื™ื ื”ืคืจื˜ื™ื™ื ืจืง ื‘ืฉื‘ื™ืœ ืœื—ื–ืง ืืช ืื•ืชืŸ ืืžื•ื ื•ืช. ื–ื” ืœื ืงืœ ืœืฉื ื•ืช ืืžื•ื ื” ืฉืžืื˜ื” ืื•ืชืš ื›ื™ ื‘ืจื•ื‘ ื”ืžืงืจื™ื ื”ืžื•ื— ืžืžืฉ ืžืชื ื’ื“ ืœื›ื–ื” ืฉื™ื ื•ื™. ื•ื‘ื›ืœ ื–ืืช ืจื•ื‘ ื”ื–ืžืŸ ืฉื•ื•ื” ืœืžืฆื•ื ืืช ื”ื“ืจืš ืœื–ื”ื•ืช ื•ืœืฉื ื•ืช ืืช ืื•ืชืŸ ืžื—ืฉื‘ื•ืช. ื›ืฉื”ืžื— ืคื•ืขืœ ื ื’ื“ืš ื”ืจื‘ื” ื™ื•ืชืจ ืงืฉื” ืœื”ืชืงื“ื.