1. jQuery框架的显著特点。

jQuery强调的理念是写的少,做的多(write less。do more)。

其主要特点有:轻量级、强大的选择器、美丽的DOM操作封装、可靠的事件处理机制、完好的Ajax处理、出色的浏览器兼容性、链式操作方式、丰富的插件支持、开源产品。

2.eval是做什么的?

eval功能是把相应的字符串解析成JS代码并执行;但不安全。很耗性能。

3.null与undefined的差别?

Undefined类型仅仅有一个值,即undefined。当声明的变量还未被初始化时,变量的默认值为undefined。Null类型也仅仅有一个值,即null,null用来表示尚未存在的对象,经常使用来表示函数企图返回一个不存在的对象。

4.对this对象的理解。

this是js的一个keyword,随着函数使用场合不同,this的值会发生变化。

可是有一个总原则,那就是this指的是调用函数的那个对象。

5.use strict是什么意思?

表示代码标志为“严格模式”,则当中执行的全部代码都必定是严格模式下的。

假设在语法检測时发现语法问题,则整个代码块失效。并导致一个语法异常。假设在执行期出现了违反严格模式的代码。则抛出执行异常。

6.new操作符的功能。

(1)创建一个空对象,使用this变量引用该对象,同一时候还继承了该函数的原型

(2)属性和方法被增加到this引用的对象中。

(3)新创建的对象由this所引用。而且最后隐式的返回this。

7.typeofkeyword的功能。

typeof可用来推断一个变量是否为空或是什么类型的变量。

typeof一般仅仅能返回例如以下几个结果:number、boolean、string、function、object、undefined。

8.instanceofkeyword的功能。

instanceof可用来推断一个变量是否为空或是什么类型的变量。假设想推断一个变量是否某个对象的实例建议使用instanceofkeyword。

9.hasOwnProperty函数的功能。

hasOwnProperty函数是用来推断一个对象是否有你给出名称的属性或对象。只是须要注意的是。此方法无法检查该对象的原型链中是否具有该属性。该属性必须是对象本身的一个成员。

10.一下isPrototypeOf函数的功能。

isPrototypeOf函数是用来推断要检查其原型链的对象是否存在于指定对象实例中。是则返回true,否则返回false。

11.对JSON的了解。

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。其是基于JavaScript的一个子集,具有数据格式简单,易于读写,占用空间小的特点。

12.Ajax是什么?

AJAX即“Asynchronous Javascript+XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。通过在后台与server进行少量数据交换,AJAX能够使网页实现异步更新。

这意味着能够在不又一次载入整个网页的情况下,对网页的某部分进行更新。

13.同步请求和异步请求的差别?

l  同步:提交请求→等待server处理→处理完成返回。这个期间client浏览器不能干不论什么事。

l  异步:请求通过事件触发→server处理(这是浏览器仍然能够作其它事情)→处理完成。

14.jQuery怎样解决跨域问题?

借助JSONP这个非官方的协议,其同意在server端集成script tags返回至client,通过callback的形式实现跨域訪问JSONP即JSON with Padding。假设要进行跨域请求,我们能够通过使用html的script标记来进行跨域请求,并在响应中返回要运行的script代码,当中能够直接使用JSON传递javascript对象。

15.异步载入的方式有哪些?

(1)defer,仅仅支持IE;

(2)async;

(3)创建script,插入到DOM;

16.怎样编写高性能的jQuery代码?

定义jQuery变量的时候加入varkeyword;DOM操作请务必记住缓存(cache);尽量使用链式操作;尽量把一些代码都整合到一起;避免使用全局类型的选择器;尽量使用.on方法,由于其他不论什么方法都是终于使用.on方法来实现的;尽量使用最新版本号的jQuery框架类库。

17.jQuery与jQuery UI有啥差别?

(1)jQuery是一个js库。主要提供的功能是选择器,属性改动和事件绑定等等。

(2)jQuery UI则是在jQuery的基础上,利用jQuery的扩展性,设计的插件。提供了一些经常使用的界面元素,诸如对话框、拖动行为、改变大小行为等等。

18.基于class的选择器与基于id选择器在性能上的差别。

基于class的选择性的性能相对于基于id选择器开销非常大,由于其须要遍历全部DOM元素。

19.jQuery链式调用的最大长处是什么?

避免频繁操作的DOM,链式调用能够实现先缓存再操作。

20.一句话说明内存泄漏的定义。

内存泄漏指不论什么对象在您不再拥有或须要它之后仍然存在。

21.那些操作会造成内存泄漏?

  1. l  给DOM对象加入的属性是一个对象的引用。
  2. l  DOM对象与JS对象相互引用。

  3. l  给DOM对象用attachEvent绑定事件。
  4. l  从外到内运行appendChild,这时即使调用removeChild也无法释放。
  5. l  重复重写同一个属性会造成内存大量占用。

22.垃圾回收器的功能。

垃圾回收器定期扫描对象。并计算引用了每一个对象的其它对象的数量。

假设一个对象的引用数量为0(没有其它对象引用过该对象)。或对该对象的惟一引用是循环的,那么该对象的内存就可以回收。

23.documen.write和innerHTML的差别?

document.write仅仅能重绘整个页面。innerHTML能够重绘页面的一部分。

24.jQuery框架的源代码的实现原理

jQuery框架通过改变javascript编码方式来创建了全新的编程理念。譬如关于jQuery声明的流程:先查找(创建)jQuery对象,然后调用jQuery对象的方法完毕我们须要完毕的工作。jQuery就是以这样的能够说是最简单的编码逻辑来改变javascript编码方式的,这个流程就是jQuery的编码逻辑核心。

25.jQuery中怎样将对象转化为json字符串,然后再转化回来?

能够通过JSON.stringify方法把一个对象转换成json字符串,再通过JSON.parse方法把一个json字符串解析成对象。

26.get()、[]和.eq()方法的差别。

eq返回原生jQuery对象,截取某些el元素生成jQuery新对象;get和[]返回的都是原生的DOM对象,原理一致。get和[]差别是get是通过jQuery对象的方法获取,[]是依据jQuery是一个数组对象获取。

27.context的概念。

context就是限定查找的范围,context必须是一个DOM元素。context底层还是用了.find()方法来实现的。

28.delegate()和.live()方法的差别。

delegate方法指定了托付对象,live方法托付给了jQuery的context,1.9版本号以后用on方法取代了。

29.attr()和.prop()方法的差别。

.attr()方法是操作属性节点。.prop()方法是操作获取到的相应js对象的属性。在遇到要获取或设置checked、selected、readonly和disabled等属性时,用prop方法显然更好。.prop()方法更高效,由于.attr()方法要訪问DOM。

30.jQuery中的load方法一般怎么用的?

load方法一般在加载远程HTML代码并插入到DOM中的时候用,通经常使用来从Webserver上获取静态的数据文件。

假设要传递參数的话,能够使用$.get()或$.post()方法。

jQuery必知要点(一)的更多相关文章

  1. jQuery必知必会

    原文地址:https://my.oschina.net/u/218421/blog/37391 jQuery优势 轻量级    强大的选择器   出色的DOM操作的封装   可靠的事件处理机制   完 ...

  2. 人人必知的10个 jQuery 小技巧

    原文地址:http://info.9iphp.com/10-jquery-tips-everyone-should-know/ 人人必知的10个 jQuery 小技巧   收集的10个 jQuery ...

  3. input屏蔽历史记录 ;function($,undefined) 前面的分号是什么用处 JSON 和 JSONP 两兄弟 document.body.scrollTop与document.documentElement.scrollTop兼容 URL中的# 网站性能优化 前端必知的ajax 简单理解同步与异步 那些年,我们被耍过的bug——has

    input屏蔽历史记录   设置input的扩展属性autocomplete 为off即可 ;function($,undefined) 前面的分号是什么用处   ;(function($){$.ex ...

  4. 《MySQL 必知必会》读书总结

    这是 <MySQL 必知必会> 的读书总结.也是自己整理的常用操作的参考手册. 使用 MySQL 连接到 MySQL shell>mysql -u root -p Enter pas ...

  5. 关于TCP/IP,必知必会的十个经典问题[转]

    关于TCP/IP,必知必会的十个问题 原创 2018-01-25 Ruheng 技术特工队   本文整理了一些TCP/IP协议簇中需要必知必会的十大问题,既是面试高频问题,又是程序员必备基础素养. 一 ...

  6. TCP/IP 必知必会的十个问题

    本文整理了一些TCP/IP协议簇中需要必知必会的十大问题,既是面试高频问题,又是程序员必备基础素养. 一.TCP/IP模型 TCP/IP协议模型(Transmission Control Protoc ...

  7. 第一百八十七节,jQuery,知问前端--cookie 插件,注册成功后生成cookie,显示登录状态

    jQuery,知问前端--cookie 插件 学习要点: 1.使用 cookie 插件 2.注册直接登录 Cookie 是网站用来在客户端保存识别用户的一种小文件.一般来用库可以保存用户登 录信息.购 ...

  8. 第一百七十七节,jQuery,知问前端--概述及 jQuery UI

    jQuery,知问前端--概述及 jQuery UI 学习要点: 1.项目介绍 2.jQuery UI 3.UI 主题 一.项目介绍 我们重点仿照“知乎”的架构模式来搭建界面和布局,以及大部分前端功能 ...

  9. H5系列之History(必知必会)

    H5系列之History(必知必会)   目录 概念 兼容性 属性 方法 H5方法       概念     理解History Api的使用方式 目的是为了解决哪些问题   作用:ajax获取数据时 ...

随机推荐

  1. android sdk 更新失败问题解决办法

    网上几乎都是这么说的 1.设置tools下的options,然后点击菜单packages下的reload 2.然后就会出现列表在点install进行安装 但是在更新时莫名其妙的也会出现错误 解决类似这 ...

  2. Newtonsoft.Json 序列化日期问题解决

    上代码 其中的使用方法和UserInfo实体对象就不贴代码了. /// <summary> /// 把对象转成json字符串 /// </summary> /// <pa ...

  3. PCB Genesis增加轮廓字 实现原理

    在Genesis增加汉字自带是不支持增加汉字的,如果需增加汉字需用到CAD 汉字库才可增加汉字,这里介绍一种脱离汉字库实现 Genesis增加轮廓字(如要变为实体,填空Surface可变为实体字) 一 ...

  4. C#,Java,MD5加密对等实现

    1.c#实现 /* *加密生成MD5 */ public static String MD5(string s) { ', 'a', 'b', 'c', 'd', 'e', 'f' }; MD5 md ...

  5. Python描述符:property()函数的小秘密

    描述符:将某种特殊类型的类的实例指派给另一个类的属性(注意:这里是类属性,而不是对象属性).而这种特殊类型的类就是实现了__get__,__set__,__delete__这三个方法中的一个或多个的新 ...

  6. Linux学习教程

    前言 “Linux?听说是一个操作系统,好用吗?” “我也不知道呀,和windows有什么区别?我能在Linux上玩LOL吗” “别提了,我用过Linux,就是黑乎乎一个屏幕,鼠标也不能用,不停地的敲 ...

  7. Google的网站性能优化最佳实践

    网站性能最佳实践   当描述一个web页面的页面速度,评价的一致性遵循许多不同的规则.这些规则是任何阶段的web开发可以应用的前端最佳实践.这个文档的每个规则都陈述于此,无论你是否运行页面测速工具-- ...

  8. Spring boot -环境搭建 ,初步接触(1)

    1. Eclipse 创建 maven project  项目目录如下: 2. pom.xml  配置文件 <project xmlns="http://maven.apache.or ...

  9. AndroidStudio怎样导入library项目库

    先打开一个Project,然后将libraryr的项目作为module进行导入: File菜单->import module菜单 以上只是导入进来,还没有作为与project真正有效的一部分.需 ...

  10. In Swift, typedef is called typealias:

    It is used to create an alias name for another data type. The syntax of the typedef declaration is:[ ...