Navigation menu

0755-82192581
  • Contact us
  • 0755-82192581
  • 深圳市罗湖区嘉宾路深华商业大厦9楼(地铁1号线国贸站B出口既是)

    3375726676@qq.com


    © 2007-2021 All Rights Reserved.
  • 策略型高端网站设计公司

    Strategic advanced website design company

    View More
  • 网站开发JavaScript的发展

    时间:2024-08-23  作者:GARY  来源:https://www.niegoweb.com/

    近年来网站开发JavaScript得到了长足的发展,与您可能之前熟悉的内容相比,现代JavaScript正则表达式已经有了很大的进步。正则表达式可以是搜索和替换文本的神奇工具。


    专业网站开发

    这在JavaScript领域尤其如此,在那里正则表达式被冷落了很多年,与它们在PCRE、Perl等领域的更现代的对应物相比,它们的能力相对不足。NET、Java、Ruby、C++和Python,那些日子已经过去了。

    ECMAScript 3于1999年标准化,将受Perl启发的正则表达式引入了JavaScript语言。尽管它做了足够多的事情使正则表达式变得非常有用(并且大部分与其他Perl风格兼容),但是仍然有一些大的遗漏。虽然JavaScript等了10年才推出下一个标准化版本ES5,但其他编程语言和正则表达式实现增加了有用的新特性,使它们的正则表达式更强大、可读性更好。至于你今天能否在你的代码中安全地使用这些特性,答案是肯定的!这些特性中最新的一个,flagv,在Node.js 20中受支持,并且2023-时代浏览器。其余的在2021时代的浏览器或更早的版本中受支持。

    有了所有这些变化,JavaScript正则表达式现在与其他风格相比如何呢?有多种方法可以考虑这个问题,但这里有几个关键方面:

    第一是性能:这是一个重要的方面,但可能不是主要方面,因为成熟的正则表达式实现通常非常快。JavaScript在正则表达式性能方面很强(至少考虑到Node.js、基于Chromium的浏览器和甚至火狐;和Safari使用的JavaScriptCore),但它使用了一个回溯引擎,该引擎缺少任何用于回溯控制的语法——这是一个使ReDoS漏洞更常见的主要限制。

    第二是支持高级功能处理常见或重要的用例:在这里,JavaScript通过ES2018和ES2024加强了它的游戏。JavaScript现在在某些特性方面是同类中最好的,比如lookback(支持无限长度)和Unicode属性(具有多字符“字符串属性”、集合减法和交集以及脚本扩展)。这些特性在许多其他版本中要么不受支持,要么不够健壮。

    相关案例

    OTHER CASE