2019年前端常见jQuery面试题

僤鯓⒐⒋嵵緔 提交于 2020-03-09 06:47:14

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

ready() 函数用于在文档进入ready状态时执行代码。当DOM 完全加载(例如HTML被完全解析DOM树构建完成时),jQuery允许你执行代码。使用$(document).ready()的最大好处在于它适用于所有浏览器,jQuery帮你解决了跨浏览器的难题。需要进一步了解的用户可以点击 answer链接查看详细讨论。

二、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 事件要更好些。

三、你是如何将一个 HTML 元素添加到 DOM 树中的?

append

appendTo

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

这对于很多 jQuery 初学者来说是一个棘手的问题,其实是个简单的问题。$(this) 返回一个 jQuery 对象,你可以对它调用多个 jQuery 方法,比如用 text() 获取文本,用val() 获取值等等。而 this 代表当前元素,它是 JavaScript 关键词中的一个,表示上下文中的当前 DOM 元素。你不能对它调用 jQuery 方法,直到它被 $() 函数包裹,例如 $(this)。

五、jQuery.get() 和 jQuery.ajax() 方法之间的区别是什么?

ajax() 方法更强大,更具可配置性, 让你可以指定等待多久,以及如何处理错误。get() 方法是一个只获取一些数据的专门化方法。

六、你知道jquery中的选择器吗,请讲一下有哪些选择器?

答 :大致分为:基本选择器,层次选择器,表单选择器

基本选择器:id选择器,标签选择器,类选择器等

层次选择器:如:$("form input") 选择所有的form元素中的input元素 $("#main > *")选择id为main的所有子元素

过滤选择器:如:$("tr:first")选择所有tr元素的第一个  $("tr:last")选择所有tr元素的最后一个

表单选择器:如:$(":input")选择所有的表单输入元素 $(":text")选择所有的text的input元素

七、jquery对象和dom对象是怎样转换的?

答 :jquery转DOM对象:jQuery 对象是一个数组对象,可以通过[index]的丰富得到相应的DOM对象

还可以通过get[index]去得到相应的DOM对象。

DOM对象转jQuery对象:$(DOM对象)

八、 在jquery中你是如何去操作样式的?

addClass() 来追加样式

removeClass() 来删除样式

toggle() 来切换样式

九、jquery你都学了哪些内容?

1.选择器;     2.对DOM的操作    3.jquery绑定事件   4.jquery动画    5.jquery对ajax的封装

十、你为什么要使用jQuery?你觉得jquery有哪些好处?

1、因为jQuery是轻量级的框架,大小不到30kb

2、它有强大的选择器,出色的DOM操作的封装

3、有可靠的事件处理机制(jQuery在处理事件绑定的时候相当的可靠)

4、完善的ajax(它的ajax封装的非常的好,不需要考虑复杂浏览器的兼容性和XMLHttpRequest对象的创建和使用的问题。)

5、出色的浏览器的兼容性

6、支持链式操作,隐式迭代

7、行为层和结构层的分离,还支持丰富的插件,jquery的文档也非常的丰富

十一、jQuery中如何来获取和设置属性

可以用attr()获取和设置元素属性

removeAttr()方法来删除元素属性   

十二、如何来设置和获取HTML和文本的值?

获取HTMl:$("选择器").html()

获取文本的值:$("选择器").text()

十三、什么是JSON,在什么情况下使用?

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式.易于人阅读和编写,同时也易于机器解析和生成.JSON采用完全独立于语言的文本格式.

  JSON最常见的用法之一,是从web服务器上读取JSON数据,将JSON数据转换为JavaScript对象,然后在网页中使用该数据.

十四、说出jQuery中常见的几种函数以及他们的含义是什么?

 jQuery中常见的函数如下:

  1)get()取得所有匹配的DOM元素集合.

  2)get(index)取得其中一个匹配的元素.index表示取得第几个匹配的元素.

  3)append(content)向每个匹配的元素内部追加内容.

  4)after(content)在每个匹配的元素之后插入内容.

  5)html()/html(var)取得或设置匹配元素的html内容.

  6)find(expr)搜索所有与指定表达式匹配的元素.

  7)bind(type,[data],fn)为每个匹配元素的特定事件绑定事件处理函数.

  8)empty()删除匹配的元素集合中所有的子节点.

  9)hover(over,out)一个模仿悬停事件(鼠标移动到一个对象上面及移出这个对象)的方法.

  10)attr(name)取得第一个匹配元素的属性值.

  11)addClass(class)和removeClass(class)为指定的元素添加或移除样式.

  12)css(name)访问第一个匹配元素的样式属性.

  13)ajax([options])通过HTTP请求加载远程数据.

  14)get(url,[data],[callback],[type])通过远程HTTP GET请求载入信息.

  15)post(url,[data],[callback],[type])通过远程HTTP POST请求载入信息.

十五、你用过jquery动画吗?请说出jquery动画的关键字?

$(selector).animate({params},speed,callback);

十六、jquery动画如何控制元素的隐藏与展示?

$( selector).hide();

$( selector).show();

十七、Vue和jquery有什么区别?

vue是数据驱动,是MVVM框架

jquery是模型驱动

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

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!