njs 0.7.9 发布,nginx 的 JavaScript 脚本语言

软件服务 创建于:2023-05-29

njs 0.7.9 已发布。njs 以 nginx 插件的方式存在,它是 JavaScript/ECMAscript 的子集,实现了大部分的 JavaScript 语言功能,没有完全遵从 ECMAScript 标准,同时抛弃了 JavaScript 比较难懂的部分。njs 不通过 V8 引擎实现,而是通过一个更小、能耗更低、更符合 nginx 应用场景的小虚拟机实现,可以理解成 nginx 为其实现了一套自己的词法解析。

作为 nginx 的插件,njs 的安装方式是重新编译 nginx。

新版本下载地址:http://nginx.org/en/docs/njs/install.html

主要变化

nginx modules:

  • Bugfix:修复FetchResponse 原型的重新初始化问题。当在 HTTP 和 Stream 中都声明了至少一个js_import指令时,ngx.fetch()在 Stream 中会返回不正确的响应。该错误在 0.7.7 版本中被引入。

Core:

  • 如果re.exec()返回 non-flat 类型数组,修复String.prototype.replace(re)出现的问题
  • start对象变更this时,修复Array.prototype.fill()
  • 修复对fs.mkdir()fs.rmdir()方法的描述
  • s元素变更this时,修复%TypedArray%.prototype.set(s)出现的问题
  • 在 eval 期间,当d调整this的大小时,修复Array.prototype.splice(s,d)出现的问题
  • 修复包含左右表达式的for-in循环

详情查看 Changelog

原文地址:https://www.oschina.net/news/218885/njs-0-7-9-released#comments

免责声明:本文来源于互联网,版权归合法拥有者所有,如有侵权请公众号联系管理员

* 本站提供的一些文章、资料是供学习研究之用,如用于商业用途,请购买正版。