• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >html5 > 后端渲染html、前端模板渲染html,jquery的html,各有什么区别?

后端渲染html、前端模板渲染html,jquery的html,各有什么区别?

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-03

本文主要包含html,backbone,angular,append,jquery等相关知识,匿名希望在学习及工作中可以帮助到您
后端渲染html
前端angular、backbone模板引擎渲染
直接使用jquery的html,append等方法
在实现过程和效率上各有何区别?

回复内容:

泻药……
好大的题……
偶懒的说怎么办……

凑合叨逼几句得了。

1、后端渲染
实现:后端拼字符串呗…… (理论上后端模板也是字符串)
好处:模板统一在后端。前端(相对)省事,不占用客户端运算资源(解析模板),只要不大改结构,文字啥的小修改后端改了就好了。
坏处:占用(部分、少部分)服务器运算资源、,response 出的数据量会(稍)大点,模板改了前端的交互和样式什么的一样得跟着联动修改。

2、前端模板
实现:看这个吧……关于模板引擎的工作方式和性能? - 前端开发 但不仅限于正则替换这一招,扫token 生成语法树,再根据语法树拼接也行,或者使用 DOM 模板,借助 DOM API 处理也行,反正招儿多了去了。
好处:不占用服务端运算资源(解析模板),模板在前端(很有可能仅部分在前端),改结构变交互都前端自己来了,改完自己调就行。不用麻烦后端再联调神马的。
坏处:占用(一部分、少部分)客户端运算资源(解析模板)。前端代码多点,毕竟包含模板代码了么。脚本是不是首次下就慢点了(看你在意不在意这个毕竟能304和CDN啥的)。可能造成前后两份模板的情况,总归要后端吐出个首屏啥的先让用户看见吧。那这部分页面模板不就是后端拼好了吐出来的么。

3、jquery的html,append等方法(包括浏览器原生相关DOM API)
实现:……这就不说了吧,不就是直接插内容或者DOM节点么。除非后端是直接吐出拼好的页面,否则不关后端是通过接口吐的html字符串还是模板数据,怎么着不都得是通过这些玩意整页面里去么。
好处:(兴许是)灵活…… 还有因为一竿子捅到底了,直接使用(前端可控的)最终API,所以除了是后端直接吐的页面外,这种方式是(相对)执行效率最高的……
坏处:各种字符串和DOM节点拼来拼去真的很烦…… 简单来说
后端渲染html 叫吐或者喷,机器人可以看到完整的呈现源码
前端模板渲染html叫填,机器人看不到完整的呈现源码 如果后端人员能力不强或对前端了解不够,尽量少用后端渲染;

如果前端人员能力不强或者前端数据交互不是很复杂,尽量少用前端模版;

如果项目不是很大,想快速实现,用jquery; 题太大,回答一点儿.
所有的渲染最终浏览都是一个html页面+js,差别就是在于后端渲染的很多都是会生成些冗余的垃圾代码(目前很对都是),前端比较好控制 都没有人提到SEO么 我觉得题主提到的这些技术可以分为两类,分类的依据在于浏览器到底做了什么事情


后端渲染HTML的情况下,浏览器会直接接收到经过服务器计算之后的呈现给用户的最终的HTML字符串,这里的计算就是服务器经过解析存放在服务器端的模板文件来完成的,在这种情况下,浏览器只进行了HTML的解析,以及通过操作系统提供的操纵显示器显示内容的系统调用在显示器上把HTML所代表的图像显示给用户。

前端渲染就是指浏览器会从后端得到一些信息,这些信息或许是适用于题主所说的angularjs的模板文件,亦或是JSON等各种数据交换格式所包装的数据,甚至是直接的合法的HTML字符串。这些形式都不重要,重要的是,将这些信息组织排列形成最终可读的HTML字符串是由浏览器来完成的,在形成了HTML字符串之后,再进行显示。


题主所提到的几个技术,我认为模板这个词语并不能用来区分这些技术的本质,模板只是一种提供给程序来解析的一种语法,换句话说,模板是用于从数据(变量)到实际的视觉表现(HTML代码)这项工作的一种实现手段,而这种手段不论在前端还是后端都有应用。

以下为本人自己的想法:
在性能上,我认为后端渲染最终会被前端渲染,因为后端渲染将所有的HTML生成集中在了一个服务器上,而前端渲染将这部分工作分发到各个终端上。

另外,对于开发而言,这样能够避免后端开发人员过多的编写HTML代码,后端开发人员只需和前端开发事先商定好数据格式,后端就只需将数据生成,用数据交换格式包装,再发送出去就可以了,这样能够使开发人员之间的分工更加明确。 其实我觉得题主的意思分成具体的情景可能是两种:

① 页面是PHP文件,是由和标签混合嵌套而成,比如WordPress模板,这类情况是前端资源的加载在服务器端就解析完成,这种方式就是后端承受的压力大;

② 页面没有任何后端代码嵌套,数据用ajax或者websocket请求,这种情况就是实现了前后端的完全分离。至于html结构,也分为用模板和动态操作DOM两种情况,模板的原理主要是靠正则匹配替换,假设整个交互过程中,html结构没有太大变化,那么模板效率相对好些,如果需要频繁动态地更新的html结构,必然要操作DOM,例如append()、html()、remove()、empty(),这种方法很灵活,但是DOM查找是件代价比较高的事,尤其如果在移动端性能就会下降。

您可能想查找下面的文章:

  • HTML5知识点总结
  • HTML5的本地存储
  • HTML5本地存储之IndexedDB
  • Html5实现文件异步上传功能
  • Html5新标签datalist实现输入框与后台数据库数据的动态匹配
  • 详解HTML5 window.postMessage与跨域
  • HTML5拖放API实现拖放排序的实例代码
  • 解决html5中video标签无法播放mp4问题的办法
  • HTML5新特性 多线程(Worker SharedWorker)
  • Html5新增标签有哪些

相关文章

  • 2017-08-06整理HTML5移动端开发的常用触摸事件
  • 2018-12-03HTML5学习笔记简明版(1):HTML5介绍与语法
  • 2018-12-03CSS3 还缺少哪些必要的特性?
  • 2018-12-03移动端全景装修图的实现实例分享
  • 2018-12-03使用HTML5中的contentEditable来将多行文本自动增高_html5教程技巧
  • 2018-12-03什么是校验功能?校验功能实例用法汇总
  • 2018-12-03详解html5图片上传支持图片预览压缩及进度显示兼容IE6及标准浏览器
  • 2018-12-03HTML5的表单(绝对特别强大的功能)使用示例_html5教程技巧
  • 2017-08-06HTML5 Canvas旋转动画的2个代码例子(一个旋转的太极图效果)
  • 2018-12-03HTML5的文本样式实例介绍

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • html5教程实现Photoshop渐变色效果_html5教程技巧
    • HTML页面中添加Canvas标签示例
    • HTML5每日一练之Canvas标签的应用-矩阵变换
    • ios android html5 学哪个?
    • HTML 是怎样一步步被渲染成网页的?
    • H5拖放API基础篇
    • 实现一个HTML5音乐播放器的实例
    • HTML5 input placeholder 颜色修改示例_html5教程技巧
    • HTML5中5大存储方式汇总
    • 阻止移动设备(手机、pad)浏览器双击放大网页的方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有