js到底可以实现哪些东西?

1. CSS+JS,可以实现很多很炫的效果,例如旋转,放大,变形等;这些的话,其实一般的前端开发在接触到 CSS3很nb的属性后,都能够游刃有余的实现

2. 前端的性能优化,这块其实涉及的东西很多,对于非js之内,就不过多的说了,主要说下与js方面有关的。我们知道js加载到页面中主要分为2步,一是下载,二是解析;如果js同步下载的话,其实会block住其他资源的下载,这个就是为什么把js异步掉的原因,那这又有一个问题,那我把js异步处理后,为什么不能把它放在头部呢?异步的资源不是不阻碍其他资源的下载了吗?这里又涉及到一个问题,那就是js的解析问题,js下载完成之后就会进行解析,解析会block住其他资源的下载,更重要的一个问题是解析js过程中如果有操作DOM,那页面没有下载完,就会报错。所以现在网站一般都是将js放在页面的最底部。那放在底部就是最优的解决方法吗?不是,js没有实现按需加载。怎么理解按需加载,就是按照页面需要展示的内容加载对应处需要使用到的js。简单的说,就是在页面初始化的时候,我只加载和首屏相关的js,其他的js一概不加载。这样页面在打开的时候,只会加载很少的js文件,网站速度就能有很大的提升。那又怎样能实现js的按需加载呢,那就是:一将js模块化/低耦合的组织,二是通过工具实现按需加载,我们这边使用的是requirejs进行的模块化加载。除了js按需加载以外,其实还有个影响性能很大的问题,就是js本身的逻辑问题,这块对性能影响也很大,特别是对一些js引擎较弱的浏览器,影响更大。这块涉及到的东西也很多,简单的举个例子,页面中有300个li,通过jquery 的 $("li")方式去查找,你可以算了需要查找的时间,如果你的查到的结果不保存,每次都是使用$(‘li‘)查找,和我存储了一次,以后直接使用保存的,对比下运行时间。你就会发现运行时间差距很大。

3. 前端的模版引擎,包括underscorejs或者是artTemplatejs,这些虽然只是些工具,但是合理使用,对工作效率提升还是非常明显;接下来会进一步分开讲解这个部分

4. backbonejs,结合我们现在开发的项目,backbone还是非常实用的,主要表现在前后台分离上,并且对于前端架构的搭建和效率的提升,有很大的飞跃。接下来会详细讲解backbone在前端开发中的具体应用

5. requirejs,这个算是一个前端开发的工具吧,它的主要作用在于管理js,并且模块化和异步化js;对于管理文件的加载,有极大的帮助作用。这块接下来也会分章节讲解。

6. 还有一个是目前作为前端开发,基本上都要了解的,就是nodejs;这个东西有很多作用,就不去细说。今天主要讲解下使用nodejs开发的一个半自动化的测试作用-phantomjs,目前我们这边专题的测试走的基本上都是这个测试工具,但是是要基于phantomjs进行二次开发的。接下来也会分章节讲解这个部分

7. Grunt,这个目前在我们具体的项目中还没有完全使用,但是其很多功能还是值得研究和推广的。

时间: 2024-11-05 19:32:45

js到底可以实现哪些东西?的相关文章

Spark RDD到底是个什么东西

前言 用Spark有一段时间了,但是感觉还是停留在表面,对于Spark的RDD的理解还是停留在概念上,即只知道它是个弹性分布式数据集,其他的一概不知 有点略显惭愧.下面记录下我对RDD的新的理解. 官方介绍  弹性分布式数据集. RDD是只读的.分区记录的集合.RDD只能基于在稳定物理存储中的数据集和其他已有的RDD上执行确定性操作来创建. 问题 只要你敢问度娘RDD是什么,包你看到一大片一模一样的答案,都是说这样的概念性的东西,没有任何的价值. 我只想知道 RDD为什么是弹性 而不是 不弹性,

Spring到底是个什么东西?

虽然看了一阵子书,可以依然感觉Spring非常抽象. Spring的介绍: 引出: 依赖注入. 方式有: 构造器 注入.(+面向接口)实现松耦合. 创建应用组件(对象)之间协作的行为 称为装配. 即 注入 叫做装配. 常见的是通过XML 配置文件. AOP struts2的拦截器是用来过滤页面请求,页面请求到达action前会被过滤器拦截,而AOP实际是GOF设计模式的延续,设计模式孜孜不倦追求的是调用者和被调用者之间的解耦,主要是用来解决OOP和过程方法不能够很好解决的横切(crosscut)

【转】Node.js到底是用来做什么的

Node.js的到底是用来做什么的 在阐述之前我想放一个链接,这是国外的一个大神,对于node.js非常好的一篇介绍的文章,英文比较好的朋友可以直接去阅读,本文也很大程度上参考了这篇文章,也同时感谢知乎用户厂长对于本文的翻译!原文题目为Node.js is the New Black Node.js的简介 根据维基百科对于Node.js的介绍,我们可以知道一些基本关于Node.js的情况.Node.js是瑞安·达尔(Ryan Dahl)在2009年发明出来的一种一个能够在服务器端运行JavaSc

Angular、React.js 和Node.js到底选谁?

为了工作,程序员选择正确的框架和库来构建应用程序是至关重要的,这也就是为什么Angular和React之间有着太多的争议.Node.js的出现,让这场战争变得更加复杂,虽然有选择权通常是一件很棒的事情,但在这种情况下,对于到底应该选择哪种框架,程序员之间并没有一致的意见,每个人都有不同的想法,并且听起来都相当合理. 为了让一切归于和谐,本文就来探究一下这三大框架各自的优缺点. 基础知识部分: 在我们深入研究这三种框架的具体细节之前,先来了解一些前情提要.yigouyul22.com xucaiz

unity 第一步 了解unity到底是个什么东西

Unity是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏.建筑可视化.实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎.Unity类似于Director,Blender game engine, Virtools 或 Torque Game Builder等利用交互的图型化开发环境为首要方式的软件其编辑器运行在Windows 和Mac OS X下,可发布游戏至Windows.Mac.Wii.iPhone.Windows pho

【翻译】Ext JS 6有什么新东西?

工具包ToolKits 发布 包的命名 Fashion 图表 ItemEdit插件 网格 电子表格 可操作模式Actionable Mode和可访问性 LazyItems插件 屏幕阅读器支持可访问性 微加载Microloader Touch网格 原文:http://docs.sencha.com/extjs/6.0/whats_new/6.0.0/whats_new.html Ext JS在Sencha框架中引入了许多新的和令人兴奋的改进.这些变化为基于所有现代浏览器.设备和屏幕尺寸带来了新的功

嵌入式到底要学哪些东西?

有些人一直在问,嵌入式要学哪些东西?今天我详细告诉你到底要学哪些技术: 刚开始: 1)学习 Linux系统安装. 常用命令.应用程序安装. 2) 学习 Linux 下的 C 编程.这本书必学<UNIX 环境高级编程>.<UNIX 网络编程>,Rechard Stevens 写的,C 高手大都学习过 <C 和指针>.<C 缺陷与陷阱>.<高质量C/C++编程指南>.<C 专家编程>.<The C programming Langu

AJAX学习-到底是个什么东西

一.基础概念 1.全称:Asynchronous.JavaScript.And.XML(异步的 JavaScript 和 XML). 2.定义: Ajax不是一个技术,它实际上是几种技术,每种技术都有其独特这处,合在一起就成了一个功能强大的新技术. 3.包括: XHTML和CSS 使用文档对象模型(DocumentObjectModel)作动态显示和交互 使用XML和XSLT做数据交互和操作 使用XMLHttpRequest进行异步数据接收 使用JavaScript将它们绑定在一起 4.解释:是

用JS的数组缓存一些东西

var cache_index = new Array(); //首页的ajax缓存 //ajax 推荐的游戏和软件 function change_tuijian(sid,div_class){ if(typeof(cache_index[sid])=="undefined") { $.post(APP_PATH + "index.php?m=game&c=index&a=tui_ajax", {sid: sid}, function (data)