0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

React、Preact和Inferno谁才是真正优秀的JavaScript框架?

如意 来源:读芯术微信公众号 作者:读芯术微信公众号 2020-10-13 16:12 次阅读

JavaScript中有许多框架,且各有千秋。在过去的几个月中,笔者一直在研究各种JavaScript框架及其差异。本文中,笔者将选择三个框架,并讨论构建快速Web应用程序的优秀框架。

笔者选择了React、Preact和Inferno,它们是非常有名的框架。本文将讨论这些框架的功能(能够开发快速的Web应用程序)、优缺点、统计数据以及其他一些有趣的特点,这些特点将帮助你为项目选择优秀的框架。

Preact

Preact声称是最轻量级的框架之一,大小为3kB。体积小并没有限制其性能。它被认为是一个非常强大的框架,并且是React的有力竞争对手。

将Preact与React进行比较时,可以发现它们之间存在一些相似之处。但由于Preact的功能主要基于速度和性能,因此它们还有更多重要的区别。以下是Preact的一些主要功能,这些功能使其比React更快:

首先,Precat压缩后大小约为3Kb。React压缩后约为42KB。

尽管React拥有自己的综合事件系统,该系统具有多种优点,但却被认为非常繁重。Preact仅使用DOM API来实现合成事件系统的功能。

Preact比React-lite(React的简化版本)具有更多功能。

Preact明显比React快。笔者发现了这个很棒的速度比较机制,该机制在GitHub站点上托管。它可以通过添加、完成和删除100个项目来比较框架速度。因此,笔者从中进行了基准测试,结果表明Preact比React快四倍。

React、Preact和Inferno谁才是真正优秀的JavaScript框架?

另外,如果熟悉React,与Preact一起使用会非常容易,因为它与React很大程度上兼容。除此之外,使用Preact还有几个重要的优点:

它支持ES6 API(与React相同)。

强大的CLI支持快速的项目设置

包含React独有的其他高级功能。

Preact处于迅速增长中,出现了许多示例、大量文档、不断增长的社区等。

尽管Preact包含许多功能,但也有一些缺点。但如果需要构建基于性能的小型应用程序,那么Preact仍然是比React更好的选择。

Inferno

Inferno是另一个JavaScript UI库,类似于React。与Preact相似,Inferno也使用与React相同的API构建,但是Inferno的主要目的是变得快速、轻便。尽管Inferno基于React,但与React 和Preact相比,它包含一些重要的功能/差异:

与React相比,Inferno的体积非常小。压缩后约为8KB,比Preact稍大。

Inferno不单独包含DOM。Inferno的DOM内置于其核心中。

Inferno-compact可以帮助您使用各种React库。

Inferno在功能组件上使用生命周期方法。

由于本文主要基于比较速度和性能,因此来看一下Inferno自身提供的关于一些JS框架的基准比较。

React、Preact和Inferno谁才是真正优秀的JavaScript框架?

如图所示,Inferno对于典型应用程序操作的基准值高于Preact和React的基准值。它们几乎与Vanilla JS相似。可以在GitHub上找到有关此基准测试系统的更多详细信息。以下是使用Inferno的其他一些优点:

速度极快。

比React、Angular和Vue更轻便。

Inferno包含其自己的服务器端渲染和路由功能。

可以将常规样式属性与Inferno样式一起使用。

可以使用自己的体系结构来构建应用程序,而不是将其限制于其他人的设计。

另一方面,它也存在一些明显的缺点。由于与React相比,Inferno相对较新,因此其生态系统和社区仍在发展。从而需要大量时间来提供其他库、支持等。

同样,Inferno不对Hooks提供支持。尽管可以使用inferno-compact来使用React组件或包,但是这会使项目变慢并且变大。这样Inferno的优质体验感会打折扣。

本文主要目的是比较React、Preact和Inferno框架的速度。可以看到,Preact和Inferno的大多数功能基于React。但是在速度和性能方面,Preact居首位,而Inferno则位居第二。

因此,如果正在为需要闪电般性能的小型平台寻找类似React的框架,Preact或Inferno将是理想选择。但必须始终牢记, React是已经几乎取代了Angular的即成框架,因此无法将React与Preact或Inferno的功能完全匹配。

在功能和本机支持方面,React仍然位居榜首,而Preact和Inferno在速度方面具有优势,根据项目选你所需即可。
责编AJX

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Web
    Web
    +关注

    关注

    2

    文章

    1255

    浏览量

    69283
  • javascript
    +关注

    关注

    0

    文章

    515

    浏览量

    53743
  • reactjs
    +关注

    关注

    0

    文章

    4

    浏览量

    4549
收藏 人收藏

    评论

    相关推荐

    bootstrap框架和vue框架的区别

    Bootstrap和Vue都是目前非常流行的前端开发框架,它们各自具有独特的优势和特点。 设计理念 Bootstrap是一个基于HTML、CSS和JavaScript的前端开发框架,主要用于快速构建
    的头像 发表于 07-11 09:55 715次阅读

    javascript属于前端吗

    JavaScript是一种高级编程语言,通常用于网页开发。它是一种脚本语言,可用于在网页上动态交互,提供更好的用户体验。JavaScript是一种广泛使用的技术,几乎所有现代网页都使用它来实现交互性
    的头像 发表于 12-03 11:43 1350次阅读

    javascript的文件扩展名

    JavaScript的文件扩展名是.js。它是一种广泛使用的脚本语言,用于为网页添加交互性和动态功能。在本文中,我将详细介绍JavaScript的文件扩展名.js,包括其起源、用途、特点以及
    的头像 发表于 12-03 11:42 1470次阅读

    JavaScript的语法和基本功能

    JavaScript(简称JS)是一种常用的脚本编程语言,广泛应用于网页开发、移动应用开发等领域。正式的JS标准由Ecma国际组织制定并维护,最新的ECMAScript标准定义了JavaScript
    的头像 发表于 12-03 11:15 559次阅读

    怎样开启javascript功能

    JavaScript是一种客户端脚本语言,它可以在网页中实现动态交互和功能增强。在现代网页开发中,几乎所有的浏览器都支持JavaScript,因此,开启JavaScript功能是很简单的。 要开启
    的头像 发表于 12-03 11:13 3414次阅读

    JavaScript的用途和功能

    JavaScript是一种广泛使用的脚本语言,用于为网站添加动态功能和交互性。从创建简单的交互式表单到设计复杂的网页游戏,JavaScript为开发者提供了丰富的功能和灵活的创作能力。它在现代的网页
    的头像 发表于 12-03 11:12 819次阅读

    javascript指什么

    JavaScript是一种高级编程语言,通常用于为网页添加交互功能。它是一种面向对象的语言,旨在通过编写代码来控制网页的行为,使用户能够与网页进行动态交互。JavaScript能够与HTML和CSS
    的头像 发表于 12-03 11:11 809次阅读

    javascript运行环境有哪些

    JavaScript 是一种广泛应用于网页开发的编程语言,它可以在不同的运行环境下运行。以下是一些常见的 JavaScript 运行环境: 浏览器环境: 浏览器是最常见的 JavaScript 运行
    的头像 发表于 11-27 16:11 2437次阅读

    javascript:;怎么解决

    javascript:” 是一个JavaScript伪协议,它通常出现在URL地址栏或链接中,用于执行JavaScript代码。然而,有时它可能会导致一些问题,特别是在一些不支持
    的头像 发表于 11-26 14:39 7013次阅读

    浏览器需要支持javascript怎么解决

    JavaScript是一种流行的脚本语言,用于对网页进行动态交互和功能增强。几乎所有现代浏览器都支持JavaScript,但在某些情况下,用户可能需要采取措施来确保浏览器支持JavaScript
    的头像 发表于 11-26 11:23 4732次阅读

    javascript深入浅出

    JavaScript是一种广泛使用的编程语言,常用于Web开发。下面是对JavaScript的深入浅出的解释: JavaScript简介 JavaScript是一种解释型、动态类型、基
    的头像 发表于 11-16 10:34 2216次阅读

    javascript的成熟分类

    JavaScript的成熟分类可以从多个角度进行划分,以下是几种常见的分类方式: 语言成熟度: 解释型语言:JavaScript是一种解释型语言,这意味着它不需要在编译期间进行预处理或编译。 动态
    的头像 发表于 11-16 10:30 31.6w次阅读

    javascript可以关闭吗

    **JavaScript是一种编程语言,它不能被“关闭”。**JavaScript是一种客户端脚本语言,它通常嵌入在HTML页面中。当用户访问一个包含JavaScript的网页时,浏览器会执行这些
    的头像 发表于 11-16 10:20 1373次阅读

    javascript有什么用

    JavaScript是一种广泛使用的编程语言,主要用于增强网页和创建动态网页内容。以下是JavaScript的一些主要用途: 交互性:JavaScript可以使网页具有交互性。例如,当用户点击按钮或
    的头像 发表于 11-16 10:19 907次阅读

    javascript怎么开启

    在浏览器中启用 JavaScript 的方法如下: 在浏览器中启用 JavaScript 对于大多数浏览器,您可以在浏览器的设置或选项中启用 JavaScript。以下是一些常见浏览器的启用步骤
    的头像 发表于 11-16 10:16 1803次阅读