当前位置: 首页 / 技术分享 / 正文
好程序员Web前端培训分享jQuery面试题梳理

2020-07-08

jQuery

  好程序员web前端培训分享jQuery面试题梳理,目前jQuery在企业中的应用还是很普遍的,企业HR在招聘时也会考察求职者对jQuery的掌握。接下来的好程序员web前端培训就给大家简单汇总了一些jQuery经典面试题及答案,希望能给大家带来帮助。

jQuery

  1、jQuery库中的$()是什么?

  答:$() 函数是 jQuery() 函数的别称,乍一看这很怪异,还使jQuery代码晦涩难懂。一旦你适应了,你会爱上它的简洁。$() 函数用于将任何对象包裹成jQuery对象,接着你就被允许调用定义在jQuery对象上的多个不同方法。你甚至可以将一个选择器字符串传入 $() 函数,它会返回一个包含所有匹配的DOM元素数组的jQuery对象。这个问题我已经见过好几次被提及,尽管它非常基础,但它经常被用来区分一个开发人员是否了解jQuery。

  2、网页上有5个元素,如何使用jQuery来选择它们?

  答:jQuery支持不同类型的选择器,例如ID选择器、class选择器、标签选择器。鉴于这个问题没提到ID和class,你可以用标签选择器来选择所有的div元素。jQuery代码:$("div"),这样会返回一个包含所有5个div标签的jQuery对象。

  3、$(document).ready()是个什么函数?为什么要用它?

  答:ready()函数用于在文档进入ready状态时执行代码。当DOM完全加载(例如HTML被完全解析DOM树构建完成时),jQuery允许你执行代码。使用$(document).ready()的最大好处在于它适用于所有浏览器,jQuery帮你解决了跨浏览器的难题。

  4、JavaScript window.onload事件和jQuery ready函数有何不同?

  答:JavaScript window.onload事件和jQuery ready函数之间的主要区别是,前者除了要等待DOM被创建还要等到包括大型图片、音频、视频在内的所有外部资源都完全加载。如果加载图片和媒体内容花费了大量时间,用户就会感受到定义在window.onload事件上的代码在执行时有明显的延迟。

  另一方面,jQuery ready()函数只需对DOM树的等待,而无需对图像或外部资源加载的等待,从而执行起来更快。使用jQuery $(document).ready()的另一个优势是你可以在网页里多次使用它,浏览器会按它们在HTML页面里出现的顺序执行它们,相反对于onload技术而言,只能在单一函数里使用。鉴于这个好处,用jQuery ready()函数比用JavaScript window.onload 事件要更好些。

  5、jQuery里的each()是什么函数?你是如何使用它的?

  答:each()函数就像是Java里的一个Iterator,它允许你遍历一个元素集合。你可以传一个函数给 each()方法,被调用的jQuery对象会在其每个元素上执行传入的函数。

  6、$(this)和this关键字在jQuery中有何不同?

  $(this)返回一个jQuery对象,你可以对它调用多个jQuery方法,比如用text()获取文本,用val()获取值等等。而this代表当前元素,它是JavaScript关键词中的一个,表示上下文中的当前DOM元素。你不能对它调用jQuery方法,直到它被$()函数包裹,例如$(this)。

    除了以上内容,关于jQuery的面试题还有很多,在此就不多做赘述。jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架)。如果你想成为一个高薪Web前端工程师,一定要学好jQuery。想系统的学习Web前端吗?那就来好程序员web前端培训班进行快速系统的学习进阶!

好程序员公众号

  • · 剖析行业发展趋势
  • · 分享大厂面试心得
  • · 汇聚企业项目源码
  • · 下载全套高精尖教程

好程序员开班动态

More+
  • HTML5大前端 <高端班>

    开班时间:2020-11-16(北京)

    开班盛况

    开班时间:2020-12-07(深圳)

    预约报名
  • 大数据+人工智能 <高端班>

    开班时间:2020-09-14(北京)

    开班盛况

    开班时间:2020-11-09(北京)

    开班盛况
  • JavaEE分布式开发 <高端班>

    开班时间:2021-01-04(北京)

    预约报名

    开班时间:2020-07-20(北京)

    开班盛况
  • Python人工智能+数据分析 <高端班>

    开班时间:2020-07-20(上海)

    开班盛况

    开班时间:2020-09-21(上海)

    开班盛况
  • 云计算开发 <高端班>

    开班时间:2019-07-22(北京)

    开班盛况

    开班时间:2019-07-15(深圳)

    开班盛况
在线咨询
免费试听
入学教程
立即报名

Copyright 2011-2020 北京千锋互联科技有限公司 .All Right 京ICP备12003911号-5 京公安网11010802011455号