เจ…เจธเฉ€เจ‚ JavaScript เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ Zabbix เจตเจฟเฉฑเจš เจตเจฟเจนเจพเจฐเจ• เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚

เจ…เจธเฉ€เจ‚ JavaScript เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ Zabbix เจตเจฟเฉฑเจš เจตเจฟเจนเจพเจฐเจ• เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚
เจŸเจฟเจ–เฉ‹เจจ เจ‰เจธเจ•เฉ‹เจต, Zabbix เจเจ•เฉ€เจ•เจฐเจฃ เจŸเฉ€เจฎ เจ‡เฉฐเจœเฉ€เจจเฉ€เจ…เจฐ

เจœเจผเฉˆเจฌเจฟเจ•เจธ เจ‡เฉฑเจ• เจ…เจจเฉเจ•เฉ‚เจฒเจฟเจค เจชเจฒเฉ‡เจŸเจซเจพเจฐเจฎ เจนเฉˆ เจœเฉ‹ เจ•เจฟเจธเฉ‡ เจตเฉ€ เจ•เจฟเจธเจฎ เจฆเฉ‡ เจกเฉ‡เจŸเจพ เจฆเฉ€ เจจเจฟเจ—เจฐเจพเจจเฉ€ เจ•เจฐเจจ เจฒเจˆ เจตเจฐเจคเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจœเจผเฉˆเจฌเจฟเจ•เจธ เจฆเฉ‡ เจธเจญ เจคเฉ‹เจ‚ เจชเฉเจฐเจพเจฃเฉ‡ เจธเฉฐเจธเจ•เจฐเจฃเจพเจ‚ เจคเฉ‹เจ‚, เจจเจฟเจ—เจฐเจพเจจเฉ€ เจชเฉเจฐเจธเจผเจพเจธเจ•เจพเจ‚ เจ•เฉ‹เจฒ เจตเฉฑเจ–-เจตเฉฑเจ– เจธเจ•เฉเจฐเจฟเจชเจŸเจพเจ‚ เจจเฉ‚เฉฐ เจšเจฒเจพเจ‰เจฃ เจฆเฉ€ เจฏเฉ‹เจ—เจคเจพ เจนเฉˆ เจ•เจพเจฐเจตเจพเจˆ เจŸเจพเจฐเจ—เฉ‡เจŸ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเฉ‹เจกเจพเจ‚ เจฆเฉ€ เจœเจพเจ‚เจš เจฒเจˆเฅค เจ‰เจธเฉ‡ เจธเจฎเฉ‡เจ‚, เจธเจ•เฉเจฐเจฟเจชเจŸเจพเจ‚ เจฆเฉ€ เจธเจผเฉเจฐเฉ‚เจ†เจค เจจเจพเจฒ เจ•เจˆ เจฎเฉเจธเจผเจ•เจฒเจพเจ‚ เจ†เจˆเจ†เจ‚, เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจธเจ•เฉเจฐเจฟเจชเจŸเจพเจ‚ เจฆเจพ เจธเจฎเจฐเจฅเจจ เจ•เจฐเจจ เจฆเฉ€ เจœเจผเจฐเฉ‚เจฐเจค, เจธเฉฐเจšเจพเจฐ เจจเฉ‹เจกเจพเจ‚ เจ…เจคเฉ‡ เจชเฉเจฐเฉŒเจ•เจธเฉ€เจœเจผ เจจเฉ‚เฉฐ เจ‰เจนเจจเจพเจ‚ เจฆเฉ€ เจกเจฟเจฒเฉ€เจตเจฐเฉ€, เจ…เจคเฉ‡ เจจเจพเจฒ เจนเฉ€ เจตเฉฑเจ–-เจตเฉฑเจ– เจธเฉฐเจธเจ•เจฐเจฃเจพเจ‚ เจฒเจˆ เจธเจฎเจฐเจฅเจจเฅค

Zabbix เจฒเจˆ JavaScript

เจ…เจชเฉเจฐเฉˆเจฒ 2019 เจตเจฟเฉฑเจš, Zabbix 4.2 เจจเฉ‚เฉฐ JavaScript เจชเฉเจฐเฉ€เจชเฉเจฐเฉ‹เจธเฉˆเจธเจฟเฉฐเจ— เจจเจพเจฒ เจชเฉ‡เจธเจผ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจธเฉ€เฅค เจฌเจนเฉเจค เจธเจพเจฐเฉ‡ เจฒเฉ‹เจ• เจธเจ•เฉเจฐเจฟเจชเจŸเจพเจ‚ เจฒเจฟเจ–เจฃ เจจเฉ‚เฉฐ เจ›เฉฑเจกเจฃ เจฆเฉ‡ เจตเจฟเจšเจพเจฐ เจฌเจพเจฐเฉ‡ เจ‰เจคเจธเจผเจพเจนเจฟเจค เจนเฉ‹ เจ—เจ เจœเฉ‹ เจ•เจฟ เจ•เจฟเจคเฉ‡ เจกเฉ‡เจŸเจพ เจฒเฉˆเจ‚เจฆเฉ€เจ†เจ‚ เจนเจจ, เจ‡เจธเจจเฉ‚เฉฐ เจนเจœเจผเจฎ เจ•เจฐเจฆเฉ€เจ†เจ‚ เจนเจจ เจ…เจคเฉ‡ เจ‡เจธเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจซเจพเจฐเจฎเฉˆเจŸ เจตเจฟเฉฑเจš เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจฆเฉ€เจ†เจ‚ เจนเจจ เจœเฉ‹ เจœเจผเฉˆเจฌเจฟเจ•เจธ เจธเจฎเจเจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจธเจงเจพเจฐเจจ เจœเจพเจ‚เจšเจพเจ‚ เจ•เจฐเจฆเฉ‡ เจนเจจ เจœเฉ‹ เจœเจผเฉˆเจฌเจฟเจ•เจธ เจฆเฉเจ†เจฐเจพ เจธเจŸเฉ‹เจฐเฉ‡เจœ เจ…เจคเฉ‡ เจชเฉเจฐเฉ‹เจธเฉˆเจธเจฟเฉฐเจ— เจฒเจˆ เจคเจฟเจ†เจฐ เจจเจนเฉ€เจ‚ เจนเฉ‹เจฃ เจตเจพเจฒเฉ‡ เจกเฉ‡เจŸเจพ เจจเฉ‚เฉฐ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจเจ—เฉ‡, เจ…เจคเฉ‡ เจซเจฟเจฐ Zabbix เจ…เจคเฉ‡ JavaScript เจŸเฉ‚เจฒเจธ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจ‡เจธ เจกเฉ‡เจŸเจพ เจธเจŸเฉเจฐเฉ€เจฎ เจฆเฉ€ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจ•เจฐเฉ‹เฅค เจœเจผเฉˆเจฌเจฟเจ•เจธ 3.4 เจตเจฟเฉฑเจš เจฆเจฟเจ–เจพเจˆ เจฆเฉ‡เจฃ เจตเจพเจฒเฉ€เจ†เจ‚ เจจเฉ€เจตเฉ‡เจ‚-เจชเฉฑเจงเจฐเฉ€ เจ–เฉ‹เจœเจพเจ‚ เจ…เจคเฉ‡ เจจเจฟเจฐเจญเจฐ เจ†เจˆเจŸเจฎเจพเจ‚ เจฆเฉ‡ เจจเจพเจฒ, เจธเจพเจจเฉ‚เฉฐ เจชเฉเจฐเจพเจชเจค เจ•เฉ€เจคเฉ‡ เจกเฉ‡เจŸเจพ เจจเฉ‚เฉฐ เจ›เจพเจ‚เจŸเจฃ เจ…เจคเฉ‡ เจชเฉเจฐเจฌเฉฐเจงเจจ เจฒเจˆ เจ‡เฉฑเจ• เจ•เจพเจซเจผเฉ€ เจฒเจšเจ•เจฆเจพเจฐ เจธเฉฐเจ•เจฒเจช เจฎเจฟเจฒเจฟเจ† เจนเฉˆเฅค

Zabbix 4.4 เจตเจฟเฉฑเจš, JavaScript เจตเจฟเฉฑเจš เจชเฉเจฐเฉ€-เจชเฉเจฐเฉ‹เจธเฉˆเจธเจฟเฉฐเจ— เจฆเฉ‡ เจ‡เฉฑเจ• เจคเจฐเจ•เจชเฉ‚เจฐเจจ เจจเจฟเจฐเฉฐเจคเจฐเจคเจพ เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš, เจ‡เฉฑเจ• เจจเจตเฉ€เจ‚ เจธเฉ‚เจšเจจเจพ เจตเจฟเจงเฉ€ เจชเฉเจฐเจ—เจŸ เจนเฉ‹เจˆ เจนเฉˆ - เจตเฉˆเจฌเจนเฉเฉฑเจ•, เจœเจฟเจธเจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจคเฉ€เจœเฉ€-เจงเจฟเจฐ เจฆเฉ€เจ†เจ‚ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจจเจพเจฒ เจœเจผเฉˆเจฌเจฟเจ•เจธ เจธเฉ‚เจšเจจเจพเจตเจพเจ‚ เจจเฉ‚เฉฐ เจ†เจธเจพเจจเฉ€ เจจเจพเจฒ เจœเฉ‹เฉœเจจ เจฒเจˆ เจ•เฉ€เจคเฉ€ เจœเจพ เจธเจ•เจฆเฉ€ เจนเฉˆเฅค

JavaScript เจ…เจคเฉ‡ Duktapes

JavaScript เจ…เจคเฉ‡ Duktape เจจเฉ‚เฉฐ เจ•เจฟเจ‰เจ‚ เจšเฉเจฃเจฟเจ† เจ—เจฟเจ† เจธเฉ€? เจญเจพเจธเจผเจพเจตเจพเจ‚ เจ…เจคเฉ‡ เจ‡เฉฐเจœเจฃเจพเจ‚ เจฒเจˆ เจ•เจˆ เจตเจฟเจ•เจฒเจชเจพเจ‚ 'เจคเฉ‡ เจตเจฟเจšเจพเจฐ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจธเฉ€:

  • เจฒเฉเจ† - เจฒเฉเจ† 5.1
  • เจฒเฉเจ† โ€“ เจฒเฉเจ†เจœเฉ€เจค
  • Javascript - Duktape
  • เจœเจพเจตเจพเจธเจ•เฉเจฐเจฟเจชเจŸ - เจœเฉˆเจฐเฉ€ เจธเจ•เฉเจฐเจฟเจชเจŸ
  • เจเจฎเจฌเฉˆเฉฑเจก เจชเจพเจˆเจฅเจจ
  • เจเจฎเจฌเฉˆเจกเจก เจชเจฐเจฒ

เจฎเฉเฉฑเจ– เจšเฉ‹เจฃ เจฎเจพเจชเจฆเฉฐเจก เจชเฉเจฐเจšเจฒเจฟเจค เจธเจจ, เจ‰เจคเจชเจพเจฆ เจตเจฟเฉฑเจš เจ‡เฉฐเจœเจฃ เจฆเฉ‡ เจเจ•เฉ€เจ•เจฐเจจ เจฆเฉ€ เจธเฉŒเจ–, เจ˜เฉฑเจŸ เจธเจฐเฉ‹เจค เจฆเฉ€ เจ–เจชเจค เจ…เจคเฉ‡ เจ‡เฉฐเจœเจฃ เจฆเฉ€ เจธเจฎเฉเฉฑเจšเฉ€ เจ•เจพเจฐเจ—เฉเจœเจผเจพเจฐเฉ€, เจ…เจคเฉ‡ เจจเจฟเจ—เจฐเจพเจจเฉ€ เจตเจฟเฉฑเจš เจ‡เจธ เจญเจพเจธเจผเจพ เจตเจฟเฉฑเจš เจ•เฉ‹เจก เจจเฉ‚เฉฐ เจชเฉ‡เจธเจผ เจ•เจฐเจจ เจฆเฉ€ เจธเฉเจฐเฉฑเจ–เจฟเจ†เฅค เจธเฉ‚เจšเจ•เจพเจ‚ เจฆเฉ‡ เจธเฉเจฎเฉ‡เจฒ เจฆเฉ‡ เจ†เจงเจพเจฐ 'เจคเฉ‡, JavaScript เจจเฉ‡ Duktape เจ‡เฉฐเจœเจฃ 'เจคเฉ‡ เจœเจฟเฉฑเจค เจชเฉเจฐเจพเจชเจค เจ•เฉ€เจคเฉ€เฅค

เจ…เจธเฉ€เจ‚ JavaScript เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ Zabbix เจตเจฟเฉฑเจš เจตเจฟเจนเจพเจฐเจ• เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚

เจšเฉ‹เจฃ เจฎเจพเจชเจฆเฉฐเจก เจ…เจคเฉ‡ เจชเฉเจฐเจฆเจฐเจธเจผเจจ เจŸเฉˆเจธเจŸเจฟเฉฐเจ—

เจกเจ•เจŸเฉ‡เจช เจฆเฉ€เจ†เจ‚ เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพเจตเจพเจ‚:

- เจฎเจฟเจ†เจฐเฉ€ ECMAScript E5/E5.1
- เจกเจ•เจŸเฉ‡เจช เจฒเจˆ เจœเจผเฉˆเจฌเจฟเจ•เจธ เจฎเฉ‹เจกเฉ€เจŠเจฒ:

  • Zabbix.log() - เจคเฉเจนเจพเจจเฉ‚เฉฐ Zabbix เจธเจฐเจตเจฐ เจฒเฉŒเจ— เจตเจฟเฉฑเจš เจธเจฟเฉฑเจงเฉ‡ เจตเฉ‡เจฐเจตเฉ‡ เจฆเฉ‡ เจตเฉฑเจ–-เจตเฉฑเจ– เจชเฉฑเจงเจฐเจพเจ‚ เจฆเฉ‡ เจจเจพเจฒ เจธเฉเจจเฉ‡เจนเฉ‡ เจฒเจฟเจ–เจฃ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ, เจœเฉ‹ เจ•เจฟ เจ—เจฒเจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจธเฉฐเจฌเจงเจฟเจค เจ•เจฐเจจเจพ เจธเฉฐเจญเจต เจฌเจฃเจพเจ‰เจ‚เจฆเจพ เจนเฉˆ, เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจ‡เฉฑเจ• เจตเฉˆเจฌเจนเฉเฉฑเจ• เจตเจฟเฉฑเจš, เจธเจฐเจตเจฐ เจธเจฅเจฟเจคเฉ€ เจจเจพเจฒเฅค
  • CurlHttpRequest() - เจคเฉเจนเจพเจจเฉ‚เฉฐ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจฒเจˆ HTTP เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจ•เจฐเจจ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ, เจœเจฟเจธ 'เจคเฉ‡ เจตเฉˆเจฌเจนเฉเฉฑเจ• เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ†เจงเจพเจฐเจฟเจค เจนเฉˆเฅค
  • atob() เจ…เจคเฉ‡ btoa() - เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฌเฉ‡เจธ 64 เจซเจพเจฐเจฎเฉˆเจŸ เจตเจฟเฉฑเจš เจธเจŸเจฐเจฟเฉฐเจ—เจพเจ‚ เจจเฉ‚เฉฐ เจเจจเจ•เฉ‹เจก เจ…เจคเฉ‡ เจกเฉ€เจ•เฉ‹เจก เจ•เจฐเจจ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเจพ เจนเฉˆเฅค

เจจเฉ‹เจŸ. Duktape ACME เจฎเจพเจชเจฆเฉฐเจกเจพเจ‚ เจฆเฉ€ เจชเจพเจฒเจฃเจพ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจœเจผเฉˆเจฌเจฟเจ•เจธ เจธเจ•เฉเจฐเจฟเจชเจŸ เจฆเฉ‡ 2015 เจธเฉฐเจธเจ•เจฐเจฃ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจฌเจพเจ…เจฆ เจฆเฉ€เจ†เจ‚ เจคเจฌเจฆเฉ€เจฒเฉ€เจ†เจ‚ เจฎเจพเจฎเฉ‚เจฒเฉ€ เจนเจจ, เจ‡เจธเจฒเจˆ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจจเจœเจผเจฐเจ…เฉฐเจฆเจพเจœเจผ เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆเฅค.

เจœเจพเจตเจพ เจธเจ•เฉเจฐเจฟเจชเจŸ เจฎเฉˆเจœเจฟเจ•

JavaScript เจฆเจพ เจธเจพเจฐเจพ เจœเจพเจฆเฉ‚ เจ—เจคเฉ€เจธเจผเฉ€เจฒ เจŸเจพเจˆเจชเจฟเฉฐเจ— เจ…เจคเฉ‡ เจŸเจพเจˆเจช เจ•เจพเจธเจŸเจฟเฉฐเจ— เจตเจฟเฉฑเจš เจนเฉˆ: เจธเจŸเฉเจฐเจฟเฉฐเจ—, เจธเฉฐเจ–เจฟเจ†เจคเจฎเจ•, เจ…เจคเฉ‡ เจฌเฉเจฒเฉ€เจ…เจจเฅค

เจ‡เจธเจฆเจพ เจฎเจคเจฒเจฌ เจ‡เจน เจนเฉˆ เจ•เจฟ เจ‡เจน เจชเจนเจฟเจฒเจพเจ‚ เจคเฉ‹เจ‚ เจ˜เฉ‹เจธเจผเจฟเจค เจ•เจฐเจจเจพ เจœเจผเจฐเฉ‚เจฐเฉ€ เจจเจนเฉ€เจ‚ เจนเฉˆ เจ•เจฟ เจ•เจฟเจธ เจ•เจฟเจธเจฎ เจฆเฉ‡ เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจฎเฉเฉฑเจฒ เจตเจพเจชเจธ เจ•เจฐเจจเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ.

เจ—เจฃเจฟเจคเจฟเจ• เจ•เจพเจฐเจตเจพเจˆเจ†เจ‚ เจตเจฟเฉฑเจš, เจซเฉฐเจ•เจธเจผเจจ เจ“เจชเจฐเฉ‡เจŸเจฐเจพเจ‚ เจฆเฉเจ†เจฐเจพ เจตเจพเจชเจธ เจ•เฉ€เจคเฉ‡ เจฎเฉเฉฑเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจธเฉฐเจ–เจฟเจ†เจตเจพเจ‚ เจตเจฟเฉฑเจš เจฌเจฆเจฒเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจ…เจœเจฟเจนเฉ‡ เจ“เจชเจฐเฉ‡เจธเจผเจจเจพเจ‚ เจฆเจพ เจ…เจชเจตเจพเจฆ เจœเฉ‹เฉœ เจนเฉˆ, เจ•เจฟเจ‰เจ‚เจ•เจฟ เจœเฉ‡เจ•เจฐ เจ˜เฉฑเจŸเฉ‹-เจ˜เฉฑเจŸ เจ‡เฉฑเจ• เจธเจผเจฌเจฆ เจ‡เฉฑเจ• เจธเจคเจฐ เจนเฉˆ, เจคเจพเจ‚ เจธเจŸเฉเจฐเจฟเฉฐเจ— เจฐเฉ‚เจชเจพเจ‚เจคเจฐเจจ เจธเจพเจฐเฉ€เจ†เจ‚ เจธเจผเจฐเจคเจพเจ‚ 'เจคเฉ‡ เจฒเจพเจ—เฉ‚ เจนเฉเฉฐเจฆเจพ เจนเฉˆเฅค

เจจเฉ‹เจŸ. เจ…เจœเจฟเจนเฉ‡ เจชเจฐเจฟเจตเจฐเจคเจจ เจฒเจˆ เจœเจผเจฟเฉฐเจฎเฉ‡เจตเจพเจฐ เจขเฉฐเจ— เจ†เจฎ เจคเฉŒเจฐ 'เจคเฉ‡ เจตเจธเจคเฉ‚ เจฆเฉ‡ เจฎเฉ‚เจฒ เจชเฉเจฐเฉ‹เจŸเฉ‹เจŸเจพเจˆเจชเจพเจ‚ เจตเจฟเฉฑเจš เจฒเจพเจ—เฉ‚ เจ•เฉ€เจคเฉ‡ เจœเจพเจ‚เจฆเฉ‡ เจนเจจ, เจฎเฉเฉฑเจฒ ะธ เจŸเฉ‚เจธเจŸเฉเจฐเจฟเฉฐเจ—. เจฎเฉเฉฑเจฒ เจธเฉฐเจ–เจฟเจ†เจคเจฎเจ• เจฐเฉ‚เจชเจพเจ‚เจคเจฐเจจ เจฆเฉ‡ เจฆเฉŒเจฐเจพเจจ เจ…เจคเฉ‡ เจนเจฎเฉ‡เจธเจผเจพเจ‚ เจตเจฟเจงเฉ€ เจคเฉ‹เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจฌเฉเจฒเจพเจ‡เจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ เจŸเฉ‚เจธเจŸเฉเจฐเจฟเฉฐเจ—. เจตเจฟเจงเฉ€ เจฎเฉเฉฑเจฒ เจฎเฉเฉฑเจขเจฒเฉ‡ เจฎเฉเฉฑเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจตเจพเจชเจธ เจ•เจฐเจจเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ, เจจเจนเฉ€เจ‚ เจคเจพเจ‚ เจ‡เจธเจฆเฉ‡ เจจเจคเฉ€เจœเฉ‡ เจจเฉ‚เฉฐ เจ…เจฃเจกเจฟเฉฑเจ  เจ•เฉ€เจคเจพ เจœเจพเจตเฉ‡เจ—เจพเฅค

เจ‡เฉฑเจ• เจตเจธเจคเฉ‚ 'เจคเฉ‡ เจ‡เฉฑเจ• เจขเฉฐเจ— เจ•เจฟเจนเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ เจฎเฉเฉฑเจฒ. เจœเฉ‡เจ•เจฐ เจ‡เจน เจจเจนเฉ€เจ‚ เจฎเจฟเจฒเจฆเจพ เจœเจพเจ‚ เจ•เฉ‹เจˆ เจฎเฉเฉฑเจขเจฒเจพ เจฎเฉเฉฑเจฒ เจตเจพเจชเจธ เจจเจนเฉ€เจ‚ เจ•เจฐเจฆเจพ, เจคเจพเจ‚ เจตเจฟเจงเฉ€ เจจเฉ‚เฉฐ เจ•เจฟเจนเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ เจŸเฉ‚เจธเจŸเฉเจฐเจฟเฉฐเจ—. เจœเฉ‡เจ•เจฐ เจขเฉฐเจ— เจŸเฉ‚เจธเจŸเฉเจฐเจฟเฉฐเจ— เจจเจนเฉ€เจ‚ เจฒเฉฑเจญเจฟเจ†, เจ–เฉ‹เจœ เจฎเฉเฉฑเจฒ เจ†เจฌเจœเฉˆเจ•เจŸ เจฆเฉ‡ เจชเฉเจฐเฉ‹เจŸเฉ‹เจŸเจพเจˆเจช เจตเจฟเฉฑเจš, เจ…เจคเฉ‡ เจธเจญ เจ•เฉเจ เจ‰เจฆเฉ‹เจ‚ เจคเฉฑเจ• เจฆเฉเจนเจฐเจพเจ‡เจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ เจœเจฆเฉ‹เจ‚ เจคเฉฑเจ• เจฎเฉเฉฑเจฒ เจฆเฉ€ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจชเฉ‚เจฐเฉ€ เจจเจนเฉ€เจ‚ เจนเฉ‹ เจœเจพเจ‚เจฆเฉ€ เจ…เจคเฉ‡ เจธเจฎเฉ€เจ•เจฐเจจ เจตเจฟเฉฑเจš เจธเจพเจฐเฉ‡ เจฎเฉเฉฑเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจ‰เจธเฉ‡ เจ•เจฟเจธเจฎ เจตเจฟเฉฑเจš เจธเฉเฉฑเจŸเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ. เจœเฉ‡เจ•เจฐ เจ†เจฌเจœเฉˆเจ•เจŸ เจ‡เฉฑเจ• เจขเฉฐเจ— เจฒเจพเจ—เฉ‚ เจ•เจฐเจฆเจพ เจนเฉˆ เจŸเฉ‚เจธเจŸเฉเจฐเจฟเฉฐเจ—, เจœเฉ‹ เจ‡เฉฑเจ• เจฎเฉเฉฑเจขเจฒเจพ เจฎเฉเฉฑเจฒ เจตเจพเจชเจธ เจ•เจฐเจฆเจพ เจนเฉˆ, เจซเจฟเจฐ เจ‡เจน เจ‰เจน เจนเฉˆ เจœเฉ‹ เจธเจคเจฐ เจชเจฐเจฟเจตเจฐเจคเจจ เจฒเจˆ เจตเจฐเจคเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจ‡เจธ เจตเจฟเจงเฉ€ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจ เจฆเจพ เจจเจคเฉ€เจœเจพ เจœเจผเจฐเฉ‚เจฐเฉ€ เจคเฉŒเจฐ 'เจคเฉ‡ เจ‡เฉฑเจ• เจธเจคเจฐ เจจเจนเฉ€เจ‚ เจนเฉˆ.

เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจœเฉ‡เจ•เจฐ เจตเจธเจคเฉ‚ เจฒเจˆ 'obj' เจตเจฟเจงเฉ€ เจจเฉ‚เฉฐ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ เจŸเฉ‚เจธเจŸเฉเจฐเจฟเฉฐเจ—,

`var obj = { toString() { return "200" }}` 

เจขเฉฐเจ— เจŸเฉ‚เจธเจŸเฉเจฐเจฟเฉฐเจ— เจฌเจฟเจฒเจ•เฉเจฒ เจ‡เฉฑเจ• เจธเจคเจฐ เจตเจพเจชเจธ เจ•เจฐเจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจœเจฆเฉ‹เจ‚ เจ‡เฉฑเจ• เจจเฉฐเจฌเจฐ เจฆเฉ‡ เจจเจพเจฒ เจ‡เฉฑเจ• เจธเจคเจฐ เจœเฉ‹เฉœเจฆเฉ‡ เจนเจพเจ‚, เจคเจพเจ‚ เจธเจพเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจšเจฟเจชเจ•เจพเจˆ เจธเจคเจฐ เจฎเจฟเจฒเจฆเฉ€ เจนเฉˆ:

`obj + 1 // '2001'` 

`obj + 'a' // โ€˜200a'`

เจชเจฐ เจœเฉ‡ เจคเฉเจธเฉ€เจ‚ เจฆเฉเจฌเจพเจฐเจพ เจฒเจฟเจ–เจฆเฉ‡ เจนเฉ‹ เจŸเฉ‚เจธเจŸเฉเจฐเจฟเฉฐเจ—, เจคเจพเจ‚ เจ•เจฟ เจตเจฟเจงเฉ€ เจ‡เฉฑเจ• เจธเฉฐเจ–เจฟเจ† เจตเจพเจชเจธ เจ•เจฐเฉ‡, เจœเจฆเฉ‹เจ‚ เจตเจธเจคเฉ‚ เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจ‡เฉฑเจ• เจธเฉฐเจ–เจฟเจ†เจคเจฎเจ• เจฐเฉ‚เจชเจพเจ‚เจคเจฐเจฃ เจฆเฉ‡ เจจเจพเจฒ เจ‡เฉฑเจ• เจ—เจฃเจฟเจคเจฟเจ• เจ•เจพเจฐเจตเจพเจˆ เจ•เฉ€เจคเฉ€ เจœเจพเจตเฉ‡เจ—เฉ€ เจ…เจคเฉ‡ เจ—เจฃเจฟเจคเจฟเจ• เจœเฉ‹เฉœ เจฆเจพ เจจเจคเฉ€เจœเจพ เจชเฉเจฐเจพเจชเจค เจ•เฉ€เจคเจพ เจœเจพเจตเฉ‡เจ—เจพเฅค

`var obj = { toString() { return 200 }}` 

`obj + 1 // '2001'`

เจ‡เจธ เจธเจฅเจฟเจคเฉ€ เจตเจฟเฉฑเจš, เจœเฉ‡เจ•เจฐ เจ…เจธเฉ€เจ‚ เจ‡เฉฑเจ• เจธเจŸเฉเจฐเจฟเฉฐเจ— เจจเจพเจฒ เจœเฉ‹เฉœเจฆเฉ‡ เจนเจพเจ‚, เจคเจพเจ‚ เจ‡เฉฑเจ• เจธเจŸเฉเจฐเจฟเฉฐเจ— เจฐเฉ‚เจชเจพเจ‚เจคเจฐเจจ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจธเจพเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจ—เฉ‚เฉฐเจฆ เจตเจพเจฒเฉ€ เจธเจคเจฐ เจฎเจฟเจฒเจฆเฉ€ เจนเฉˆเฅค

`obj + 'a' // โ€˜200a'`

เจ‡เจน เจจเจตเฉ‡เจ‚ JavaScript เจ‰เจชเจญเฉ‹เจ—เจคเจพเจตเจพเจ‚ เจฆเฉเจ†เจฐเจพ เจตเฉฑเจกเฉ€ เจ—เจฟเจฃเจคเฉ€ เจตเจฟเฉฑเจš เจ—เจฒเจคเฉ€เจ†เจ‚ เจฆเจพ เจ•เจพเจฐเจจ เจนเฉˆ.

เจขเฉฐเจ— เจŸเฉ‚เจธเจŸเฉเจฐเจฟเฉฐเจ— เจคเฉเจธเฉ€เจ‚ เจ‡เฉฑเจ• เจซเฉฐเจ•เจธเจผเจจ เจฒเจฟเจ– เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจœเฉ‹ เจตเจธเจคเฉ‚ เจฆเฉ‡ เจฎเฉŒเจœเฉ‚เจฆเจพ เจฎเฉเฉฑเจฒ เจจเฉ‚เฉฐ 1 เจฆเฉเจ†เจฐเจพ เจตเจงเจพเจเจ—เจพเฅค

เจ…เจธเฉ€เจ‚ JavaScript เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ Zabbix เจตเจฟเฉฑเจš เจตเจฟเจนเจพเจฐเจ• เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚
เจธเจ•เฉเจฐเจฟเจชเจŸ เจฆเจพ เจเจ—เจœเจผเฉ€เจ•เจฟเจŠเจธเจผเจจ, เจฌเจธเจผเจฐเจคเฉ‡ เจ•เจฟ เจตเฉ‡เจฐเฉ€เจเจฌเจฒ 3 เจฆเฉ‡ เจฌเจฐเจพเจฌเจฐ เจนเฉ‹เจตเฉ‡, เจ…เจคเฉ‡ เจ‡เจน 4 เจฆเฉ‡ เจฌเจฐเจพเจฌเจฐ เจตเฉ€ เจนเฉ‹เจตเฉ‡เฅค

เจœเจฆเฉ‹เจ‚ เจ‡เฉฑเจ• เจ•เจพเจธเจŸ (==) เจจเจพเจฒ เจคเฉเจฒเจจเจพ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ, เจคเจพเจ‚ เจตเจฟเจงเฉ€ เจจเฉ‚เฉฐ เจนเจฐ เจตเจพเจฐ เจšเจฒเจพเจ‡เจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ เจŸเฉ‚เจธเจŸเฉเจฐเจฟเฉฐเจ— เจฎเฉเฉฑเจฒ เจตเจพเจงเฉ‡ เจซเฉฐเจ•เจธเจผเจจ เจฆเฉ‡ เจจเจพเจฒ. เจ‡เจธ เจ…เจจเฉเจธเจพเจฐ, เจนเจฐเฉ‡เจ• เจ…เจ—เจฒเฉ€ เจคเฉเจฒเจจเจพ เจฆเฉ‡ เจจเจพเจฒ, เจฎเฉเฉฑเจฒ เจตเจงเจฆเจพ เจนเฉˆเฅค เจ—เฉˆเจฐ-เจ•เจพเจธเจŸ เจคเฉเจฒเจจเจพ (===) เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจ‡เจธ เจคเฉ‹เจ‚ เจฌเจšเจฟเจ† เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆเฅค

เจ…เจธเฉ€เจ‚ JavaScript เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ Zabbix เจตเจฟเฉฑเจš เจตเจฟเจนเจพเจฐเจ• เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚
เจ•เจฟเจธเจฎ เจ•เจพเจธเจŸเจฟเฉฐเจ— เจคเฉ‹เจ‚ เจฌเจฟเจจเจพเจ‚ เจคเฉเจฒเจจเจพ

เจจเฉ‹เจŸ. เจ•เจพเจธเจŸ เจคเฉเจฒเจจเจพ เจฆเฉ€ เจฌเฉ‡เจฒเฉ‹เฉœเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจจเจพ เจ•เจฐเฉ‹.

เจ—เฉเฉฐเจเจฒเจฆเจพเจฐ เจธเจ•เฉเจฐเจฟเจชเจŸเจพเจ‚ เจฒเจˆ, เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจ—เฉเฉฐเจเจฒเจฆเจพเจฐ เจคเจฐเจ• เจตเจพเจฒเฉ‡ เจตเฉˆเจฌเจนเฉเฉฑเจ•เจธ, เจœเจฟเจนเจจเจพเจ‚ เจฒเจˆ เจ•เจฟเจธเจฎ เจ•เจพเจธเจŸเจฟเฉฐเจ— เจจเจพเจฒ เจคเฉเจฒเจจเจพ เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆ, เจ‰เจนเจจเจพเจ‚ เจฎเฉเฉฑเจฒเจพเจ‚ เจฒเจˆ เจœเจพเจ‚เจšเจพเจ‚ เจจเฉ‚เฉฐ เจชเฉ‚เจฐเจต-เจฒเจฟเจ–เจฃ เจฆเฉ€ เจธเจฟเจซเจพเจฐเจธเจผ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ เจœเฉ‹ เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจตเจพเจชเจธ เจ•เจฐเจฆเฉ‡ เจนเจจ เจ…เจคเฉ‡ เจ…เจธเฉฐเจ—เจคเจคเจพเจตเจพเจ‚ เจ…เจคเฉ‡ เจคเจฐเฉเฉฑเจŸเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจธเฉฐเจญเจพเจฒเจฆเฉ‡ เจนเจจเฅค

เจตเฉˆเจฌเจนเฉเฉฑเจ• เจฎเฉ€เจกเฉ€เจ†

2019 เจฆเฉ‡ เจ…เจ–เฉ€เจฐ เจตเจฟเฉฑเจš เจ…เจคเฉ‡ 2020 เจฆเฉ‡ เจธเจผเฉเจฐเฉ‚ เจตเจฟเฉฑเจš, เจœเจผเฉˆเจฌเจฟเจ•เจธ เจเจ•เฉ€เจ•เจฐเจฃ เจŸเฉ€เจฎ เจธเจฐเจ—เจฐเจฎเฉ€ เจจเจพเจฒ เจตเฉˆเจฌเจนเฉเฉฑเจ• เจ…เจคเฉ‡ เจ†เจŠเจŸ-เจ†เจซ-เจฆ-เจฌเจพเจ•เจธ เจเจ•เฉ€เจ•เจฐเจฃเจพเจ‚ เจจเฉ‚เฉฐ เจตเจฟเจ•เจธเจค เจ•เจฐ เจฐเจนเฉ€ เจนเฉˆ เจœเฉ‹ เจœเจผเฉˆเจฌเจฟเจ•เจธ เจกเจฟเจธเจŸเฉเจฐเฉ€เจฌเจฟเจŠเจธเจผเจจ เจฆเฉ‡ เจจเจพเจฒ เจ†เจ‰เจ‚เจฆเฉ‡ เจนเจจเฅค

เจ…เจธเฉ€เจ‚ JavaScript เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ Zabbix เจตเจฟเฉฑเจš เจตเจฟเจนเจพเจฐเจ• เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚
เจจเจพเจฒ เจฒเจฟเฉฐเจ• เจฆเจธเจคเจพเจตเฉ‡เจœเจผ

เจชเฉ‚เจฐเจต เจชเฉเจฐเจ•เจฟเจฐเจฟเจ†

  • JavaScript เจตเจฟเฉฑเจš เจชเฉเจฐเฉ€-เจชเฉเจฐเฉ‹เจธเฉˆเจธเจฟเฉฐเจ— เจฆเฉ‡ เจ†เจ—เจฎเจจ เจจเฉ‡ เจœเจผเจฟเจ†เจฆเจพเจคเจฐ เจฌเจพเจนเจฐเฉ€ เจธเจ•เฉเจฐเจฟเจชเจŸเจพเจ‚ เจจเฉ‚เฉฐ เจ›เฉฑเจกเจฃเจพ เจธเฉฐเจญเจต เจฌเจฃเจพเจ‡เจ†, เจ…เจคเฉ‡ เจตเจฐเจคเจฎเจพเจจ เจตเจฟเฉฑเจš เจœเจผเฉˆเจฌเจฟเจ•เจธ เจตเจฟเฉฑเจš เจคเฉเจธเฉ€เจ‚ เจ•เฉ‹เจˆ เจตเฉ€ เจฎเฉเฉฑเจฒ เจชเฉเจฐเจพเจชเจค เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจ…เจคเฉ‡ เจ‡เจธเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจฌเจฟเจฒเจ•เฉเจฒ เจตเฉฑเจ–เจฐเฉ‡ เจฎเฉเฉฑเจฒ เจตเจฟเฉฑเจš เจฌเจฆเจฒ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค
  • เจœเจผเฉˆเจฌเจฟเจ•เจธ เจตเจฟเฉฑเจš เจชเฉเจฐเฉ€เจชเฉเจฐเฉ‹เจธเฉˆเจธเจฟเฉฐเจ— เจœเจพเจตเจพ เจธเจ•เฉเจฐเจฟเจชเจŸ เจ•เฉ‹เจก เจฆเฉเจ†เจฐเจพ เจฒเจพเจ—เฉ‚ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ, เจœเฉ‹, เจœเจฆเฉ‹เจ‚ เจฌเจพเจˆเจŸเจ•เฉ‹เจก เจตเจฟเฉฑเจš เจ•เฉฐเจชเจพเจ‡เจฒ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจ‡เฉฑเจ• เจซเฉฐเจ•เจธเจผเจจ เจตเจฟเฉฑเจš เจฌเจฆเจฒเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ เจœเฉ‹ เจ‡เฉฑเจ• เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐ เจฆเฉ‡ เจคเฉŒเจฐ เจคเฉ‡ เจ‡เฉฑเจ• เจธเจฟเฉฐเจ—เจฒ เจฎเฉเฉฑเจฒ เจฒเฉˆเจ‚เจฆเจพ เจนเฉˆ เจฎเฉเฉฑเจฒ เจ‡เฉฑเจ• เจธเจคเจฐ เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš (เจ‡เฉฑเจ• เจธเจคเจฐ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจ…เฉฐเจ• เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจจเฉฐเจฌเจฐ เจฆเฉ‹เจตเฉ‡เจ‚ เจธเจผเจพเจฎเจฒ เจนเฉ‹ เจธเจ•เจฆเฉ‡ เจนเจจ)เฅค
  • เจ•เจฟเจ‰เจ‚เจ•เจฟ เจ†เจ‰เจŸเจชเฉเฉฑเจŸ เจ‡เฉฑเจ• เจซเฉฐเจ•เจธเจผเจจ เจนเฉˆ, เจธเจ•เฉเจฐเจฟเจชเจŸ เจฆเฉ‡ เจ…เฉฐเจค เจตเจฟเฉฑเจš เจฒเฉ‹เฉœเฉ€เจ‚เจฆเจพ เจนเฉˆ เจตเจพเจชเจธเฉ€.
  • เจ•เฉ‹เจก เจตเจฟเฉฑเจš เจ•เจธเจŸเจฎ เจฎเฉˆเจ•เจฐเฉ‹ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจเจพ เจธเฉฐเจญเจต เจนเฉˆเฅค
  • เจธเฉฐเจธเจพเจงเจจเจพเจ‚ เจจเฉ‚เฉฐ เจจเจพ เจธเจฟเจฐเจซเจผ เจ“เจชเจฐเฉ‡เจŸเจฟเฉฐเจ— เจธเจฟเจธเจŸเจฎ เจชเฉฑเจงเจฐ 'เจคเฉ‡ เจธเฉ€เจฎเจฟเจค เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ, เจธเจ—เฉ‹เจ‚ เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎเฉ‡เจŸเจฟเจ• เจคเฉŒเจฐ 'เจคเฉ‡ เจตเฉ€เฅค เจชเฉเจฐเฉ€-เจชเฉเจฐเฉ‹เจธเฉˆเจธเจฟเฉฐเจ— เจชเฉœเจพเจ… เจจเฉ‚เฉฐ เจ…เจงเจฟเจ•เจคเจฎ 10 เจฎเฉˆเจ—เจพเจฌเจพเจˆเจŸ RAM เจ…เจคเฉ‡ 10 เจธเจ•เจฟเฉฐเจŸเจพเจ‚ เจฆเฉ€ เจฐเจจ เจŸเจพเจˆเจฎ เจธเฉ€เจฎเจพ เจจเจฟเจฐเจงเจพเจฐเจค เจ•เฉ€เจคเฉ€ เจ—เจˆ เจนเฉˆเฅค

เจ…เจธเฉ€เจ‚ JavaScript เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ Zabbix เจตเจฟเฉฑเจš เจตเจฟเจนเจพเจฐเจ• เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚

เจจเฉ‹เจŸ. 10 เจธเจ•เจฟเฉฐเจŸเจพเจ‚ เจฆเจพ เจธเจฎเจพเจ‚ เจธเจฎเจพเจชเจค เจฎเฉเฉฑเจฒ เจฌเจนเฉเจค เจœเจผเจฟเจ†เจฆเจพ เจนเฉˆ, เจ•เจฟเจ‰เจ‚เจ•เจฟ "เจญเจพเจฐเฉ€" เจชเฉเจฐเฉ€เจชเฉเจฐเฉ‹เจธเฉˆเจธเจฟเฉฐเจ— เจฆเฉเจฐเจฟเจธเจผ เจฆเฉ‡ เจ…เจจเฉเจธเจพเจฐ 1 เจธเจ•เจฟเฉฐเจŸ เจตเจฟเฉฑเจš เจนเจœเจผเจพเจฐเจพเจ‚ เจธเจผเจฐเจคเฉ€เจ† เจกเฉ‡เจŸเจพ เจ†เจˆเจŸเจฎเจพเจ‚ เจจเฉ‚เฉฐ เจ‡เจ•เฉฑเจ เจพ เจ•เจฐเจจเจพ เจœเจผเฉˆเจฌเจฟเจ•เจธ เจจเฉ‚เฉฐ เจนเฉŒเจฒเฉ€ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆเฅค เจ‡เจธเจฒเจˆ, เจ…เจ–เฉŒเจคเฉ€ เจธเจผเฉˆเจกเฉ‹ เจกเฉ‡เจŸเจพ เจเจฒเฉ€เจฎเฉˆเจ‚เจŸเจธ (เจกเฉฐเจฎเฉ€ เจ†เจˆเจŸเจฎเจพเจ‚) เจฆเฉเจ†เจฐเจพ เจชเฉ‚เจฐเฉ€ เจคเจฐเฉเจนเจพเจ‚ เจฆเฉ€เจ†เจ‚ JavaScript เจธเจ•เฉเจฐเจฟเจชเจŸเจพเจ‚ เจจเฉ‚เฉฐ เจšเจฒเจพเจ‰เจฃ เจฒเจˆ เจชเฉเจฐเฉ€-เจชเฉเจฐเฉ‹เจธเฉˆเจธเจฟเฉฐเจ— เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจ เจฆเฉ€ เจธเจฟเจซเจพเจฐเจธเจผ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ, เจœเฉ‹ เจธเจฟเจฐเจซ เจชเฉเจฐเฉ€-เจชเฉเจฐเฉ‹เจธเฉˆเจธเจฟเฉฐเจ— เจ•เจฐเจจ เจฒเจˆ เจšเจฒเจพเจˆเจ†เจ‚ เจœเจพเจ‚เจฆเฉ€เจ†เจ‚ เจนเจจเฅค.

เจคเฉเจธเฉ€เจ‚ เจชเฉเจฐเฉ€-เจชเฉเจฐเฉ‹เจธเฉˆเจธเจฟเฉฐเจ— เจŸเฉˆเจธเจŸ เจฆเฉเจ†เจฐเจพ เจœเจพเจ‚ เจ‰เจชเจฏเฉ‹เจ—เจคเจพ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจ†เจชเจฃเฉ‡ เจ•เฉ‹เจก เจฆเฉ€ เจœเจพเจ‚เจš เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹ zabbix_js:

`zabbix_js -s *script-file -p *input-param* [-l log-level] [-t timeout]`

`zabbix_js -s script-file -i input-file [-l log-level] [-t timeout]`

`zabbix_js -h`

`zabbix_js -V`

เจตเจฟเจนเจพเจฐเจ• เจ•เฉฐเจฎ

เจ‰เจฆเฉ‡เจธเจผ 1

เจ—เจฃเจจเจพ เจ•เฉ€เจคเฉ€ เจ†เจˆเจŸเจฎ เจจเฉ‚เฉฐ เจชเฉเจฐเฉ€-เจชเฉเจฐเฉ‹เจธเฉˆเจธเจฟเฉฐเจ— เจจเจพเจฒ เจฌเจฆเจฒเฉ‹เฅค

เจธเจผเจฐเจค: เจธเฉˆเจฒเจธเฉ€เจ…เจธ เจตเจฟเฉฑเจš เจธเจŸเฉ‹เจฐ เจ•เจฐเจจ เจฒเจˆ เจธเฉˆเจ‚เจธเจฐ เจคเฉ‹เจ‚ เจซเจพเจฐเจจเจนเฉ€เจŸ เจตเจฟเฉฑเจš เจคเจพเจชเจฎเจพเจจ เจชเฉเจฐเจพเจชเจค เจ•เจฐเฉ‹เฅค

เจชเจนเจฟเจฒเจพเจ‚, เจ…เจธเฉ€เจ‚ เจ‡เฉฑเจ• เจ…เจœเจฟเจนเฉ€ เจšเฉ€เจœเจผ เจฌเจฃเจพเจตเจพเจ‚เจ—เฉ‡ เจœเฉ‹ เจคเจพเจชเจฎเจพเจจ เจจเฉ‚เฉฐ เจกเจฟเจ—เจฐเฉ€ เจซเจพเจฐเจจเจนเฉ€เจŸ เจตเจฟเฉฑเจš เจ‡เจ•เฉฑเจ เจพ เจ•เจฐเจฆเฉ€ เจนเฉˆเฅค เจ‰เจธ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจ‡เฉฑเจ• เจนเฉ‹เจฐ เจกเฉ‡เจŸเจพ เจ†เจˆเจŸเจฎ (เจ—เจฃเจจเจพ เจ•เฉ€เจคเฉ€ เจ—เจˆ) เจœเฉ‹ เจ‡เฉฑเจ• เจซเจพเจฐเจฎเฉ‚เจฒเฉ‡ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจซเจพเจฐเจจเจนเฉ€เจŸ เจจเฉ‚เฉฐ เจธเฉˆเจฒเจธเฉ€เจ…เจธ เจตเจฟเฉฑเจš เจฌเจฆเจฒ เจฆเฉ‡เจตเฉ‡เจ—เฉ€เฅค

เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚:

  • เจกเฉ‡เจŸเจพ เจฆเฉ‡ เจคเฉฑเจคเจพเจ‚ เจจเฉ‚เฉฐ เจกเฉเจชเจฒเฉ€เจ•เฉ‡เจŸ เจ•เจฐเจจเจพ เจ…เจคเฉ‡ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจตเจฟเฉฑเจš เจธเจพเจฐเฉ‡ เจฎเฉเฉฑเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจธเจŸเฉ‹เจฐ เจ•เจฐเจจเจพ เจœเจผเจฐเฉ‚เจฐเฉ€ เจนเฉˆ.
  • เจคเฉเจนเจพเจจเฉ‚เฉฐ "เจฎเจพเจชเจฟเจ†เจ‚" เจกเฉ‡เจŸเจพ เจ†เจˆเจŸเจฎ เจฒเจˆ เจ…เฉฐเจคเจฐเจพเจฒเจพเจ‚ 'เจคเฉ‡ เจธเจนเจฟเจฎเจค เจนเฉ‹เจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ เจœเจฟเจธเจฆเฉ€ เจ—เจฃเจจเจพ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ เจ…เจคเฉ‡ เจซเจพเจฐเจฎเฉ‚เจฒเฉ‡ เจตเจฟเฉฑเจš เจตเจฐเจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ, เจ…เจคเฉ‡ เจ—เจฃเจจเจพ เจ•เฉ€เจคเฉ€ เจกเฉ‡เจŸเจพ เจ†เจˆเจŸเจฎ เจฒเจˆเฅค เจจเจนเฉ€เจ‚ เจคเจพเจ‚, เจ—เจฃเจจเจพ เจ•เฉ€เจคเฉ€ เจ†เจˆเจŸเจฎ เจ…เจธเจฎเจฐเจฅเจฟเจค เจธเจฅเจฟเจคเฉ€ เจตเจฟเฉฑเจš เจœเจพ เจธเจ•เจฆเฉ€ เจนเฉˆ เจœเจพเจ‚ เจชเจฟเจ›เจฒเฉ‡ เจฎเฉเฉฑเจฒ เจฆเฉ€ เจ—เจฃเจจเจพ เจ•เจฐ เจธเจ•เจฆเฉ€ เจนเฉˆ, เจœเฉ‹ เจจเจฟเจ—เจฐเจพเจจเฉ€ เจฆเฉ‡ เจจเจคเฉ€เจœเจฟเจ†เจ‚ เจฆเฉ€ เจญเจฐเฉ‹เจธเฉ‡เจฏเฉ‹เจ—เจคเจพ เจจเฉ‚เฉฐ เจชเฉเจฐเจญเจพเจตเจค เจ•เจฐเฉ‡เจ—เฉ€เฅค

เจ‡เฉฑเจ• เจนเฉฑเจฒ เจ‡เจน เจธเฉ€ เจ•เจฟ เจจเจฟเจธเจผเจšเจค เจ…เฉฐเจคเจฐเจพเจฒเจพเจ‚ เจฆเฉ‡ เจชเฉฑเจ– เจตเจฟเฉฑเจš เจฒเจšเจ•เจฆเจพเจฐ เจœเจพเจ‚เจš เจ…เฉฐเจคเจฐเจพเจฒเจพเจ‚ เจคเฉ‹เจ‚ เจฆเฉ‚เจฐ เจœเจพเจฃเจพ เจ‡เจน เจฏเจ•เฉ€เจจเฉ€ เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ เจ•เจฟ เจ—เจฃเจจเจพ เจ•เฉ€เจคเฉ€ เจ†เจˆเจŸเจฎ เจฆเจพ เจฎเฉเจฒเจพเจ‚เจ•เจฃ เจ‰เจธ เจ†เจˆเจŸเจฎ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ เจœเฉ‹ เจกเฉ‡เจŸเจพ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจฆเฉ€ เจนเฉˆ (เจธเจพเจกเฉ‡ เจ•เฉ‡เจธ เจตเจฟเฉฑเจš, เจกเจฟเจ—เจฐเฉ€ เจซเจพเจฐเจจเจนเฉ€เจŸ เจตเจฟเฉฑเจš เจคเจพเจชเจฎเจพเจจ)เฅค

เจชเจฐ เจœเฉ‡, เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจ…เจธเฉ€เจ‚ เจตเฉฑเจกเฉ€ เจ—เจฟเจฃเจคเฉ€ เจตเจฟเฉฑเจš เจกเจฟเจตเจพเจˆเจธเจพเจ‚ เจฆเฉ€ เจœเจพเจ‚เจš เจ•เจฐเจจ เจฒเจˆ เจŸเฉˆเจ‚เจชเจฒเฉ‡เจŸ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚, เจ…เจคเฉ‡ เจœเจพเจ‚เจš เจนเจฐ 30 เจธเจ•เจฟเฉฐเจŸเจพเจ‚ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจตเจพเจฐ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ, เจœเจผเฉˆเจฌเจฟเจ•เจธ 29 เจธเจ•เจฟเฉฐเจŸเจพเจ‚ เจฒเจˆ "เจนเฉˆเจ•" เจ•เจฐเจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจ†เจ–เจฐเฉ€ เจธเจ•เจฟเฉฐเจŸ 'เจคเฉ‡ เจ‡เจน เจœเจพเจ‚เจš เจ…เจคเฉ‡ เจ—เจฃเจจเจพ เจธเจผเฉเจฐเฉ‚ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ‡เจน เจ‡เฉฑเจ• เจ•เจคเจพเจฐ เจฌเจฃเจพเจ‰เจ‚เจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจชเฉเจฐเจฆเจฐเจธเจผเจจ เจจเฉ‚เฉฐ เจชเฉเจฐเจญเจพเจตเจฟเจค เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ‡เจธ เจฒเจˆ, เจจเจฟเจธเจผเจšเจฟเจค เจ…เฉฐเจคเจฐเจพเจฒเจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจ เจฆเฉ€ เจธเจฟเจซเจพเจฐเจธเจผ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ เจœเฉ‡เจ•เจฐ เจ‡เจน เจ…เจธเจฒ เจตเจฟเฉฑเจš เจœเจผเจฐเฉ‚เจฐเฉ€ เจนเฉ‹เจตเฉ‡เฅค

เจ‡เจธ เจธเจฎเฉฑเจธเจฟเจ† เจตเจฟเฉฑเจš, เจ…เจจเฉเจ•เฉ‚เจฒ เจนเฉฑเจฒ เจ‡เฉฑเจ•-เจฒเจพเจˆเจจ JavaScript เจชเฉเจฐเฉ€เจชเฉเจฐเฉ‹เจธเฉˆเจธเจฟเฉฐเจ— เจนเฉˆ เจœเฉ‹ เจกเจฟเจ—เจฐเฉ€ เจซเจพเจฐเจจเจนเฉ€เจŸ เจจเฉ‚เฉฐ เจกเจฟเจ—เจฐเฉ€ เจธเฉˆเจฒเจธเฉ€เจ…เจธ เจตเจฟเฉฑเจš เจฌเจฆเจฒเจฆเจพ เจนเฉˆ:

`return (value - 32) * 5 / 9;`

เจ‡เจน เจคเฉ‡เจœเจผ เจ…เจคเฉ‡ เจ†เจธเจพเจจ เจนเฉˆ, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฌเฉ‡เจฒเฉ‹เฉœเฉ€เจ†เจ‚ เจกเจพเจŸเจพ เจ†เจˆเจŸเจฎเจพเจ‚ เจฌเจฃเจพเจ‰เจฃ เจ…เจคเฉ‡ เจ‰เจนเจจเจพเจ‚ 'เจคเฉ‡ เจ‡เจคเจฟเจนเจพเจธ เจฐเฉฑเจ–เจฃ เจฆเฉ€ เจฒเฉ‹เฉœ เจจเจนเฉ€เจ‚ เจนเฉˆ, เจ…เจคเฉ‡ เจคเฉเจธเฉ€เจ‚ เจœเจพเจ‚เจšเจพเจ‚ เจฒเจˆ เจฒเจšเจ•เจฆเจพเจฐ เจ…เฉฐเจคเจฐเจพเจฒเจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจตเฉ€ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค

เจ…เจธเฉ€เจ‚ JavaScript เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ Zabbix เจตเจฟเฉฑเจš เจตเจฟเจนเจพเจฐเจ• เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚

`return (parseInt(value) + parseInt("{$EXAMPLE.MACRO}"));`

เจชเจฐ, เจœเฉ‡เจ•เจฐ เจ‡เฉฑเจ• เจ•เจพเจฒเจชเจจเจฟเจ• เจธเจฅเจฟเจคเฉ€ เจตเจฟเฉฑเจš เจชเฉเจฐเจพเจชเจค เจกเฉ‡เจŸเจพ เจคเฉฑเจค เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจจเจพ เจœเจผเจฐเฉ‚เจฐเฉ€ เจนเฉˆ, เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจฎเฉˆเจ•เจฐเฉ‹ เจตเจฟเฉฑเจš เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ•เจฟเจธเฉ‡ เจตเฉ€ เจธเจฅเจฟเจฐเจคเจพ เจฆเฉ‡ เจจเจพเจฒ, เจ‡เจน เจงเจฟเจ†เจจ เจตเจฟเฉฑเจš เจฐเฉฑเจ–เจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ เจ•เจฟ เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐ เจฎเฉเฉฑเจฒ เจ‡เฉฑเจ• เจธเจคเจฐ เจตเจฟเฉฑเจš เจซเฉˆเจฒเจฆเจพ เจนเฉˆเฅค เจ‡เฉฑเจ• เจธเจŸเฉเจฐเจฟเฉฐเจ— เจเจกเฉ€เจธเจผเจจ เจ“เจชเจฐเฉ‡เจธเจผเจจ เจตเจฟเฉฑเจš, เจฆเฉ‹ เจธเจŸเฉเจฐเจฟเฉฐเจ—เจพเจ‚ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจตเจฟเฉฑเจš เจœเฉ‹เฉœเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค

เจ…เจธเฉ€เจ‚ JavaScript เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ Zabbix เจตเจฟเฉฑเจš เจตเจฟเจนเจพเจฐเจ• เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚

`return (value + "{$EXAMPLE.MACRO}");`

เจ‡เฉฑเจ• เจ—เจฃเจฟเจคเจฟเจ• เจ•เจพเจฐเจตเจพเจˆ เจฆเจพ เจจเจคเฉ€เจœเจพ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจ เจฒเจˆ, เจชเฉเจฐเจพเจชเจค เจฎเฉเฉฑเจฒเจพเจ‚ เจฆเฉ€เจ†เจ‚ เจ•เจฟเจธเจฎเจพเจ‚ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจธเฉฐเจ–เจฟเจ†เจคเจฎเจ• เจซเจพเจฐเจฎเฉˆเจŸ เจตเจฟเฉฑเจš เจฌเจฆเจฒเจฃเจพ เจœเจผเจฐเฉ‚เจฐเฉ€ เจนเฉˆเฅค เจ‡เจธเจฆเฉ‡ เจฒเจˆ เจคเฉเจธเฉ€เจ‚ เจซเฉฐเจ•เจธเจผเจจ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹ parseInt(), เจœเฉ‹ เจ‡เฉฑเจ• เจชเฉ‚เจฐเจจ เจ…เฉฐเจ•, เจ‡เฉฑเจ• เจซเฉฐเจ•เจธเจผเจจ เจชเฉˆเจฆเจพ เจ•เจฐเจฆเจพ เจนเฉˆ เจชเจพเจฐเจธเจซเจฒเฉ‹เจŸ(), เจœเฉ‹ เจ‡เฉฑเจ• เจฆเจธเจผเจฎเจฒเจต, เจœเจพเจ‚ เจ‡เฉฑเจ• เจซเฉฐเจ•เจธเจผเจจ เจชเฉˆเจฆเจพ เจ•เจฐเจฆเจพ เจนเฉˆ เจ—เจฟเจฃเจคเฉ€, เจœเฉ‹ เจ‡เฉฑเจ• เจชเฉ‚เจฐเจจ เจ…เฉฐเจ• เจœเจพเจ‚ เจฆเจธเจผเจฎเจฒเจต เจตเจพเจชเจธ เจ•เจฐเจฆเจพ เจนเฉˆเฅค

เจŸเจพเจธเจ• 2

เจธเจฐเจŸเฉ€เจซเจฟเจ•เฉ‡เจŸ เจฆเฉ‡ เจ…เฉฐเจค เจคเฉฑเจ• เจธเจฎเจพเจ‚ เจธเจ•เจฟเฉฐเจŸเจพเจ‚ เจตเจฟเฉฑเจš เจชเฉเจฐเจพเจชเจค เจ•เจฐเฉ‹เฅค

เจธเจผเจฐเจค: เจ‡เฉฑเจ• เจธเฉ‡เจตเจพ "เจซเจฐเจตเจฐเฉ€ 12 12:33:56 2022 GMT" เจซเจพเจฐเจฎเฉˆเจŸ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจธเจฐเจŸเฉ€เจซเจฟเจ•เฉ‡เจŸ เจฆเฉ€ เจฎเจฟเจ†เจฆ เจชเฉเฉฑเจ—เจฃ เจฆเฉ€ เจฎเจฟเจคเฉ€ เจœเจพเจฐเฉ€ เจ•เจฐเจฆเฉ€ เจนเฉˆเฅค

ECMAScript5 เจตเจฟเฉฑเจš date.parse() ISO 8601 เจซเจพเจฐเจฎเฉˆเจŸ (YYYY-MM-DDTHH:mm:ss.sssZ) เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจฎเจฟเจคเฉ€ เจธเจตเฉ€เจ•เจพเจฐ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ‡เจธ เจจเฉ‚เฉฐ MMM DD YYYY HH:mm:ss ZZ เจซเจพเจฐเจฎเฉˆเจŸ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจธเจŸเฉเจฐเจฟเฉฐเจ— เจฒเจ—เจพเจ‰เจฃเจพ เจœเจผเจฐเฉ‚เจฐเฉ€ เจนเฉˆ

เจธเจฎเฉฑเจธเจฟเจ†: เจฎเจนเฉ€เจจเฉ‡ เจฆเฉ‡ เจฎเฉเฉฑเจฒ เจจเฉ‚เฉฐ เจชเจพเจ  เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจฆเจฐเจธเจพเจ‡เจ† เจ—เจฟเจ† เจนเฉˆ, เจ‡เฉฑเจ• เจธเฉฐเจ–เจฟเจ† เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจจเจนเฉ€เจ‚เฅค เจ‡เจธ เจซเจพเจฐเจฎเฉˆเจŸ เจตเจฟเฉฑเจš เจกเฉ‡เจŸเจพ เจกเจ•เจŸเฉ‡เจช เจฆเฉเจ†เจฐเจพ เจธเจตเฉ€เจ•เจพเจฐ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค

เจนเฉฑเจฒ เจ‰เจฆเจพเจนเจฐเจจ:

  • เจธเจญ เจคเฉ‹เจ‚ เจชเจนเจฟเจฒเจพเจ‚, เจ‡เฉฑเจ• เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจ˜เฉ‹เจธเจผเจฟเจค เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ เจœเฉ‹ เจ‡เฉฑเจ• เจฎเฉเฉฑเจฒ เจฒเฉˆเจ‚เจฆเจพ เจนเฉˆ (เจชเฉ‚เจฐเฉ€ เจธเจ•เฉเจฐเจฟเจชเจŸ เจ‰เจนเจจเจพเจ‚ เจตเฉ‡เจฐเฉ€เจเจฌเจฒเจพเจ‚ เจฆเฉ€ เจ˜เฉ‹เจธเจผเจฃเจพ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆ เจœเฉ‹ เจ•เจพเจฎเจฟเจ†เจ‚ เจฆเฉเจ†เจฐเจพ เจตเฉฑเจ– เจ•เฉ€เจคเฉ‡ เจธเฉ‚เจšเฉ€เจฌเฉฑเจง เจนเฉเฉฐเจฆเฉ‡ เจนเจจ)เฅค

  • เจชเจนเจฟเจฒเฉ€ เจฒเจพเจˆเจจ เจตเจฟเฉฑเจš เจธเจพเจจเฉ‚เฉฐ เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐ เจตเจฟเฉฑเจš เจฎเจฟเจคเฉ€ เจฎเจฟเจฒเจฆเฉ€ เจนเฉˆ เจฎเฉเฉฑเจฒ เจ…เจคเฉ‡ เจตเจฟเจงเฉ€ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจ‡เจธเจจเฉ‚เฉฐ เจ–เจพเจฒเฉ€ เจฅเจพเจ‚เจตเจพเจ‚ เจจเจพเจฒ เจตเฉฑเจ– เจ•เจฐเฉ‹ เจตเฉฐเจก. เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚, เจธเจพเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจเจฐเฉ‡ เจฎเจฟเจฒเจฆเจพ เจนเฉˆ, เจœเจฟเฉฑเจฅเฉ‡ เจเจฐเฉ‡ เจฆเจพ เจนเจฐเฉ‡เจ• เจเจฒเฉ€เจฎเฉˆเจ‚เจŸ, เจ‡เฉฐเจกเฉˆเจ•เจธ 0 เจคเฉ‹เจ‚ เจธเจผเฉเจฐเฉ‚ เจนเฉเฉฐเจฆเจพ เจนเฉˆ, เจ‡เฉฑเจ• เจธเจชเฉ‡เจธ เจคเฉ‹เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจ…เจคเฉ‡ เจฌเจพเจ…เจฆ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจฎเจฟเจคเฉ€ เจคเฉฑเจค เจจเจพเจฒ เจฎเฉ‡เจฒ เจ–เจพเจ‚เจฆเจพ เจนเฉˆเฅค เจตเฉฐเจก (0) - เจฎเจนเฉ€เจจเจพ, เจตเฉฐเจก (1) - เจ—เจฟเจฃเจคเฉ€, เจตเฉฐเจก (2) - เจธเจฎเฉ‡เจ‚ เจฆเฉ‡ เจจเจพเจฒ เจ‡เฉฑเจ• เจธเจคเจฐ, เจ†เจฆเจฟเฅค เจ‰เจธ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจฎเจฟเจคเฉ€ เจฆเฉ‡ เจนเจฐเฉ‡เจ• เจคเฉฑเจค เจจเฉ‚เฉฐ เจเจฐเฉ‡ เจตเจฟเฉฑเจš เจธเฉ‚เจšเจ•เจพเจ‚เจ• เจฆเฉเจ†เจฐเจพ เจเจ•เจธเฉˆเจธ เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆเฅค

`var split = value.split(' '),`

  • เจนเจฐ เจฎเจนเฉ€เจจเจพ (เจ•เจพเจฒเจ•เฉเจฐเจฎเจฟเจ• เจ•เฉเจฐเจฎ เจตเจฟเฉฑเจš) เจเจฐเฉ‡ เจตเจฟเฉฑเจš เจ‡เจธเจฆเฉ€ เจธเจฅเจฟเจคเฉ€ เจฆเฉ‡ เจธเฉ‚เจšเจ•เจพเจ‚เจ• เจจเจพเจฒ เจฎเฉ‡เจฒ เจ–เจพเจ‚เจฆเจพ เจนเฉˆ (0 เจคเฉ‹เจ‚ 11 เจคเฉฑเจ•)เฅค เจ‡เฉฑเจ• เจŸเฉˆเจ•เจธเจŸ เจฎเฉเฉฑเจฒ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจธเฉฐเจ–เจฟเจ†เจคเจฎเจ• เจฎเฉเฉฑเจฒ เจตเจฟเฉฑเจš เจฌเจฆเจฒเจฃ เจฒเจˆ, เจ‡เฉฑเจ• เจจเฉ‚เฉฐ เจฎเจนเฉ€เจจเฉ‡ เจฆเฉ‡ เจธเฉ‚เจšเจ•เจพเจ‚เจ• เจตเจฟเฉฑเจš เจœเฉ‹เฉœเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ (เจ•เจฟเจ‰เจ‚เจ•เจฟ เจฎเจนเฉ€เจจเจฟเจ†เจ‚ เจฆเฉ€ เจ—เจฟเจฃเจคเฉ€ 1 เจคเฉ‹เจ‚ เจธเจผเฉเจฐเฉ‚ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆ)เฅค เจ‡เจธ เจธเจฅเจฟเจคเฉ€ เจตเจฟเฉฑเจš, เจ‡เฉฑเจ• เจฆเฉ‡ เจœเฉ‹เฉœ เจฆเฉ‡ เจจเจพเจฒ เจธเจฎเฉ€เจ•เจฐเจจ เจจเฉ‚เฉฐ เจฌเจฐเฉˆเจ•เจŸเจพเจ‚ เจตเจฟเฉฑเจš เจฒเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจ•เจฟเจ‰เจ‚เจ•เจฟ เจจเจนเฉ€เจ‚ เจคเจพเจ‚ เจ‡เฉฑเจ• เจธเจŸเฉเจฐเจฟเฉฐเจ— เจชเฉเจฐเจพเจชเจค เจ•เฉ€เจคเฉ€ เจœเจพเจเจ—เฉ€, เจจเฉฐเจฌเจฐ เจจเจนเฉ€เจ‚เฅค เจ…เฉฐเจค เจตเจฟเฉฑเจš เจ…เจธเฉ€เจ‚ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚ เจŸเฉเจ•เฉœเจพ() - เจธเจฟเจฐเจซเจผ เจฆเฉ‹ เจ…เฉฑเจ–เจฐ เจ›เฉฑเจกเจฃ เจฒเจˆ เจธเจฟเจฐเฉ‡ เจคเฉ‹เจ‚ เจเจฐเฉ‡ เจจเฉ‚เฉฐ เจ•เฉฑเจŸเฉ‹ (เจœเฉ‹ เจ•เจฟ เจฆเฉ‹-เจ…เฉฐเจ•เฉ€ เจจเฉฐเจฌเจฐ เจตเจพเจฒเฉ‡ เจฎเจนเฉ€เจจเจฟเจ†เจ‚ เจฒเจˆ เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจนเฉˆ)เฅค

`MONTHS_LIST = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],`

`month_index = ('0' + (MONTHS_LIST.indexOf(split[0]) + 1)).slice(-2),`

  • เจ…เจธเฉ€เจ‚ เจขเฉเจ•เจตเฉ‡เจ‚ เจ•เฉเจฐเจฎ เจตเจฟเฉฑเจš เจธเจคเจฐ เจฆเฉ‡ เจ†เจฎ เจœเฉ‹เฉœ เจฆเฉเจ†เจฐเจพ เจชเฉเจฐเจพเจชเจค เจ•เฉ€เจคเฉ‡ เจฎเฉเฉฑเจฒเจพเจ‚ เจคเฉ‹เจ‚ ISO เจซเจพเจฐเจฎเฉˆเจŸ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจธเจคเจฐ เจฌเจฃเจพเจ‰เจ‚เจฆเฉ‡ เจนเจพเจ‚เฅค

`ISOdate = split[3] + '-' + month_index + '-' + split[1] + 'T' + split[2],`

เจจเจคเฉ€เจœเฉ‡ เจตเจพเจฒเฉ‡ เจซเจพเจฐเจฎเฉˆเจŸ เจตเจฟเฉฑเจš เจกเฉ‡เจŸเจพ 1970 เจคเฉ‹เจ‚ เจญเจตเจฟเฉฑเจ– เจตเจฟเฉฑเจš เจ•เจฟเจธเฉ‡ เจฌเจฟเฉฐเจฆเฉ‚ เจคเฉฑเจ• เจธเจ•เจฟเฉฐเจŸเจพเจ‚ เจฆเฉ€ เจธเฉฐเจ–เจฟเจ† เจนเฉˆเฅค เจŸเจฐเจฟเจ—เจฐเจธ เจตเจฟเฉฑเจš เจชเฉเจฐเจพเจชเจค เจ•เฉ€เจคเฉ‡ เจซเจพเจฐเจฎเฉˆเจŸ เจตเจฟเฉฑเจš เจกเฉ‡เจŸเจพ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจเจพ เจฒเจ—เจญเจ— เจ…เจธเฉฐเจญเจต เจนเฉˆ, เจ•เจฟเจ‰เจ‚เจ•เจฟ เจœเจผเฉˆเจฌเจฟเจ•เจธ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจธเจฟเจฐเจซ เจฎเฉˆเจ•เจฐเฉ‹ เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจจ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ {เจคเจพเจฐเฉ€เจ–เจผ} ะธ {เจธเจฎเจพเจ‚}, เจœเฉ‹ เจ‰เจชเจญเฉ‹เจ—เจคเจพ-เจ…เจจเฉเจ•เฉ‚เจฒ เจซเจพเจฐเจฎเฉˆเจŸ เจตเจฟเฉฑเจš เจฎเจฟเจคเฉ€ เจ…เจคเฉ‡ เจธเจฎเจพเจ‚ เจตเจพเจชเจธ เจ•เจฐเจฆเฉ‡ เจนเจจเฅค

  • เจ…เจธเฉ€เจ‚ เจซเจฟเจฐ เจฏเฉ‚เจจเจฟเจ•เจธ เจŸเจพเจˆเจฎเจธเจŸเฉˆเจ‚เจช เจซเจพเจฐเจฎเฉˆเจŸ เจตเจฟเฉฑเจš JavaScript เจตเจฟเฉฑเจš เจฎเฉŒเจœเฉ‚เจฆเจพ เจฎเจฟเจคเฉ€ เจชเฉเจฐเจพเจชเจค เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเจพเจ‚ เจ…เจคเฉ‡ เจชเฉเจฐเจฎเจพเจฃ-เจชเฉฑเจคเจฐ เจฆเฉ€ เจฎเจฟเจ†เจฆ เจชเฉเฉฑเจ—เจฃ เจคเฉฑเจ• เจฎเจฟเจฒเฉ€เจธเจ•เจฟเฉฐเจŸ เจฆเฉ€ เจธเฉฐเจ–เจฟเจ† เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจ เจฒเจˆ เจจเจคเฉ€เจœเฉ‡ เจตเจœเฉ‹เจ‚ เจธเจฐเจŸเฉ€เจซเจฟเจ•เฉ‡เจŸ เจฆเฉ€ เจฎเจฟเจ†เจฆ เจชเฉเฉฑเจ—เจฃ เจฆเฉ€ เจฎเจฟเจคเฉ€ เจคเฉ‹เจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจ˜เจŸเจพ เจธเจ•เจฆเฉ‡ เจนเจพเจ‚เฅค

`now = Date.now();`

  • เจœเจผเฉˆเจฌเจฟเจ•เจธ เจตเจฟเฉฑเจš เจธเจ•เจฟเฉฐเจŸ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจ เจฒเจˆ เจ…เจธเฉ€เจ‚ เจชเฉเจฐเจพเจชเจค เจฎเฉเฉฑเจฒ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจนเจœเจผเจพเจฐ เจจเจพเจฒ เจตเฉฐเจกเจฆเฉ‡ เจนเจพเจ‚เฅค

`return parseInt((Date.parse(ISOdate) - now) / 1000);`

เจŸเจฐเจฟเฉฑเจ—เจฐ เจตเจฟเฉฑเจš, เจคเฉเจธเฉ€เจ‚ เจธเจฎเฉ€เจ•เจฐเจจ เจจเจฟเจฐเจงเจพเจฐเจค เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹ 'เจ†เจ–เจฐเฉ€' เจ‰เจธ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ เจ…เฉฐเจ•เจพเจ‚ เจฆเจพ เจ‡เฉฑเจ• เจธเฉˆเฉฑเจŸ เจนเฉˆ เจœเฉ‹ เจ‰เจธ เจธเจฎเฉ‡เจ‚ เจตเจฟเฉฑเจš เจธเจ•เจฟเฉฐเจŸเจพเจ‚ เจฆเฉ€ เจธเฉฐเจ–เจฟเจ† เจจเจพเจฒ เจฎเฉ‡เจฒ เจ–เจพเจ‚เจฆเจพ เจนเฉˆ เจœเจฟเจธ เจฒเจˆ เจคเฉเจธเฉ€เจ‚ เจœเจตเจพเจฌ เจฆเฉ‡เจฃเจพ เจšเจพเจนเฉเฉฐเจฆเฉ‡ เจนเฉ‹, เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจนเจซเจผเจคเจฟเจ†เจ‚ เจตเจฟเฉฑเจšเฅค เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚, เจŸเจฐเจฟเฉฑเจ—เจฐ เจธเฉ‚เจšเจฟเจค เจ•เจฐเฉ‡เจ—เจพ เจ•เจฟ เจธเจฐเจŸเฉ€เจซเจฟเจ•เฉ‡เจŸ เจฆเฉ€ เจฎเจฟเจ†เจฆ เจ‡เฉฑเจ• เจนเจซเจผเจคเฉ‡ เจตเจฟเฉฑเจš เจ–เจคเจฎ เจนเฉ‹ เจœเจพเจตเฉ‡เจ—เฉ€เฅค

เจจเฉ‹เจŸ. เจตเจฐเจคเฉ‹เจ‚ เจตเฉฑเจฒ เจงเจฟเจ†เจจ เจฆเจฟเจ“ parseInt() เจซเฉฐเจ•เจธเจผเจจ เจตเจฟเฉฑเจš เจตเจพเจชเจธเฉ€เจฎเจฟเจฒเฉ€เจธเจ•เจฟเฉฐเจŸ เจฆเฉ€ เจตเฉฐเจก เจฆเฉ‡ เจจเจคเฉ€เจœเฉ‡ เจตเจœเฉ‹เจ‚ เจ…เฉฐเจธเจผเจ• เจธเฉฐเจ–เจฟเจ† เจจเฉ‚เฉฐ เจชเฉ‚เจฐเจจ เจ…เฉฐเจ• เจตเจฟเฉฑเจš เจคเจฌเจฆเฉ€เจฒ เจ•เจฐเจจ เจฒเจˆเฅค เจคเฉเจธเฉ€เจ‚ เจตเฉ€ เจตเจฐเจค เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจชเจพเจฐเจธเจซเจฒเฉ‹เจŸ() เจ…เจคเฉ‡ เจซเจฐเฉˆเจ•เจธเจผเจจเจฒ เจกเจพเจŸเจพ เจธเจŸเฉ‹เจฐ เจ•เจฐเฉ‹.

เจฐเจฟเจชเฉ‹เจฐเจŸ เจฆเฉ‡เจ–เฉ‹

เจธเจฐเฉ‹เจค: www.habr.com

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹