JavaScript 基础

  • JavaScript是什么?
    • JavaScript 不是面向对象的语言,但是可以模拟面向对象的思想
    • JavaScript 是一门基于对象的语言
    • JavaScript 是一门脚本语言
    • JavaScript 是一门解释性语言
    • JavaScript 是一门动态类型的语言
  • 数字类型:number类型   
    • 无论是整数还是小数都是数字类型
    • 不要用小数验证小数,因为这是个bug
    • 不要使用NaN判断是不是NaN,因该使用 isNaN (值 或者是 变量)-------NaN (not a number)
    • 想要表示十进制:就是正常的数字
    • 想要表示八进制:以0开头
    • 想要表示十六进制:以0x开头
  • 预解析(关键字:预解析、作用域、提升、隐式全局变量、)
    • 1、把变量的声明提升到当前作用域的最前面,只会提升声明,不会提升赋值。
    • 2、把函数的声明提升到当前作用域的最前面,只会提升声明,不会提升调用。
    • 3、先提升var,在提升function。
    • 4、如果有多对的script标签都有相同名字的函数,预解析的时候是分段的,互不影响

        jQuery是常用的js工具方法的一堆封装,他在一定程度上加快前端开发的速度,会缩短项目开发周期,会减少很多代码。
为什么他能够像现在如此受欢迎,成为一种事实的标准,是因为他的封装充分f考虑了开发者的习惯,在尽可能大的角度来方便开发者调用与二次开发,这是他的一个优点之一。具体体现在,类工厂链式方式的调用,比如:
$().show().animate(),比如set,get的统一参数处理。$().css('width') $().css({ width : 200 });
而且在早期版本兼容了低版本ie的很多bug,使开发的注意力真正的关注到逻辑与数据上来,而不是成天解决兼容问题。
其它优点不一一等等。


       至于如何使用好jQuery,jQuery提供的方便快捷封装在整个前端开发流程占多大的比例?为什么我们一定要建议先学js,在学习其它框架,这是我们要搞清楚的。
1. 其实如何使用好jQuery,取决于原生js的基础,什么是原生js的基础:
比如:js语句后面到底用不用加分号,不用加分号时在哪个地方有坑?
js里边单双引号是否有区别,他的标识名命名规则是怎么样的,为什么prototype与jQuery都取$为他的工厂函数标志?如果你将来写一个,还有没有其它符号可用?
js里边保留字,关键字,有哪些?each与普通的for循环有多大的区别,他的好处在哪里,他的坏处在哪里,我们什么时候该用他,什么时候不该用他,等等。
上面的这些知识,在任何一个jQuery相关书籍里边提的不多,而这些恰恰是一个js初学者必须掌握的。


2. jQuery在整个开发过程中充当了一个方便操作dom的工具方法集合,而前端开发除了操作常用的dom之外,还需要操作页面的交互数据,模块化开发,工程师发布等等。夸张点说:jQuery只是前端开发中的一个部分,他没有任何一处能力完全取代原生js。而且我们需要了解的还有很多,比如:angularjs, backbone, avlon等等,模块化开发,比如seajs, requirejs,还有其它的打包工具:grunt,glup,fis等等的。而了解这些,需要的基础是原生js的能力。
前面从个人的角度介绍了一下什么是jQuery,然后什么是js,百度很多,不一一介绍。


3. 只有在学好原生js的基础上,才能很多的学习jQuery或其它框架。因为jQuery与其它框架出现的初衷就是加快js开发,粗暴的理解,他对常用的js开发函数进行了封装,所以js功底扎实,基本看api及说明就能很快的入手,这也是jQuery及其它框架欢迎的根本。

然后个人建议:先学原生js,再学jQuery,然后有空学习jQuery源码,才好更好的使用jQuery。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值