原生javascript的意义
原生JS是指遵循ECMAscript标准的javascript,不同于微软的jscript也不依赖于任何框架,依托于浏览器标准引擎的脚本语言。
jquery是在原生态的js上集成的框架资源,使用jquery并不代表代码就不是你写的,区别在于使用jquery只是使用了它的语法,更利于兼容以及实现,jquery已经将常规的js兼容问题解决,所以使用起来出现不兼容的情况会更少,更利于开发。
但同时,要使用jquery等框架也需要去学习相关的语法,拥有js基础的同学学习jquery时会发现很轻松,在使用时也会发现很方便。
js其实包含三部分:dom 文档对象模型 bom 浏览器对象模型ecmascript 语法 简称(es)我们的效果实现其实是用es语法操作dom和bom去实现我们的目的一张图表示我们js的处理方式还算是清晰吧,dom和bom可以看出就是桥梁的作用,实现html页面与es的结合
当你用jquery有些东西不能实现时,你就知道原生多重要,成都装修公司。
不学原生JS,怎么看的懂框架。2个不同框架的人写的同一个功能。如果你没有学过这两种框架,只能看原生的JS逻辑代码,找这种框架的"规律",从而学习这种框架。
比如一个web前端初学者刚进一个公司,但是没有学过框架,他前辈会给他一个半成品的项目,或者之前有人做
jq是一个框架,里面是用原生js封装的各种函数。
(1)jquery没有分割模块,只能全部导入。在实际开发中,往往我们只需要某些功能,而不是jq的所有,于是这就出现一个问题,比如只想使用jq的$("#id")函数获取一个dom元素,但是我们却引入了91kB(压缩后)大小的jq包,这对于页面的加载速度影响是很大的,尤其对于门户网站而言,其中的图片和其它资源非常丰富,每1kb都显得十分重要。
(2)jquery本身也是开发人员为了提高效率而开发的一种库,主观来说对于开发者本身的提高非常有帮助,因为要封装一个比较完善的库需要比非常棒的js基础和很广的知识面,包括面向对象,模块化,以及各种大大小小的js api和浏览器间不不同实现。他不是推荐的开发模式而是一种备用的提高效率的方式。在开发中我们遇到很多js没有封装的功能时,就需要我们即时开发,或者导入以前开发好小库。jq对于高级前端工程师来说只是一种简单库,而高级前端工程师同样也有能力开发属于自己的库,定制更加完善的功能。
原生javascript的意义的更多相关文章
- 原生JavaScript运动功能系列(四):多物体多值链式运动
原生JavaScript运动功能系列(一):运动功能剖析与匀速运动实现 原生JavaScript运动功能系列(二):缓冲运动 原生JavaScript运动功能系列(三):多物体多值运动 多物体多值链式 ...
- JavaScript常用,继承,原生JavaScript实现classList
原文链接:http://caibaojian.com/8-javascript-attention.html 基于 Class 的组件最佳实践(Class Based Components) 基于 C ...
- 原生 JavaScript 实现 state 状态管理系统
原生 JavaScript 实现 state 状态管理系统 Build a state management system with vanilla JavaScript | CSS-Tricks 在 ...
- 原生javascript封装动画库
****转载自自己发表于牛人部落专栏的文章**** 一.前言 本文记录了自己利用原生javascript构建自己的动画库的过程,在不断改进的过程中,实现以下动画效果: 针对同一个dom元素上相继发生的 ...
- 原生javascript 实现 animate
原生javascript 实现 animate //animate function getstyle(obj,name){ if(obj.currentStyle){ return obj.curr ...
- 浅谈 原生javaScript&&react 实现全局触摸按钮(附带对addeventlistener的了解)
1.采用原生javaACript 实现全局触摸按钮 首先在控制台输出,观察事件有哪些关于触摸的字段可以使用,然后拿这些字段的数据开始来写方法. 因为要做的是全局触摸按钮,我需要拿到的是按钮时时的坐标位 ...
- 你可能不需要 jQuery!使用原生 JavaScript 进行开发
很多的 JavaScript 开发人员,包括我在内,都很喜欢 jQuery.因为它的简单,因为它有很多丰富的插件可供使用,和其它优秀的工具一样,jQuery 让我们开发人员能够更轻松的开发网站和 We ...
- 原生JavaScript技巧大收集(11~20)-(终于又被我找到这篇文章了)
11.原生JavaScript加入收藏夹 function AddFavorite(sURL, sTitle) { try { window.external.addFavorite(sURL, sT ...
- 原生javascript加载运行
原生javascript加载运行 (function(){ //TODO sometings }()); 在要运行相应代码的位置加入script标签,创建函数并自执行; 关于window.onload ...
随机推荐
- GitHub 访问慢
绕过 DNS 解析,配置 hosts 文件直连. 速度取决与服务器和你所在的网络环境,不一定换了就速度快. DNS 查询网址 https://www.ipaddress.com/ https://to ...
- koa 基础(二十五)数据库 与 art-template 模板 联动 --- 新增数据
1.视图层 根目录/views/index.html <!DOCTYPE html> <html lang="en"> <head> <m ...
- NullPointerException 没有堆栈
周五在公司搭好的ELK上查看日志,组长让看看其中NullPointerException出现很多的原因. 通过NullPointerException搜索,点看其中一个查看,发现异常的信息就一行jav ...
- LC 425. Word Squares 【lock,hard】
Given a set of words (without duplicates), find all word squares you can build from them. A sequence ...
- 数据库开源框架之sqlcipher加密数据库
访问github链接:https://github.com/sqlcipher/android-database-sqlcipher 访问 http://sqlcipher.net/sqlcipher ...
- JAVA多线程程序ProgressBar
JAVA多线程程序ProgressBar 题目简介: 思维导图: 实验代码:建议先看CalThread类,计算线程的实现,再作基本CalFrame类的界面, 然后作ReadThread类,结合CalF ...
- 八十三:redis之redis的使用场景和安装
使用场景1.登录会话存储,存储在redis中,与mamcached相比,数据不会丢失2.排行榜.计数器:比如一些秀场类的项目,经常会有一些前多少名的主播排行榜,还有一些文章阅读量.或者点赞数等3.作为 ...
- jdk1.8-Vector
一:先看下类的继承关系 UML图如下: 继承关系: ))) ))) grow(minCapacity)) ? ) newCapacity = minCapacity) ) , elementData, ...
- 虚拟机安装: vmware + ubuntu16.04
参考博客:https://blog.csdn.net/qq1326702940/article/details/82322079 这个博客讲的很详细,只要ubuntu版本相同,应该是一模一样. 注意点 ...
- 06 vue router(一)
一.vue route是什么? Vue Router是vue.js官方的路由管理器.主要有以下几种功能 1.路由和视图表的配置.(已明白) 2.模块化和基于组件的路由配置.(已明白) 3.路由参数.查 ...