0

    【干货分享】前端面试知识点锦集(JavaScript篇)

    2023.05.18 | admin | 193次围观

    目录

    1、谈谈你对Ajax的理解?(概念、特点、作用)

    2、说说你对延迟对象deferred的理解?

    3、什么是跨域,如何实现跨域访问?

    4、为什么要使用模板引擎

    5、JavaScript是一门什么样的语言,它有哪些特点?

    6、JavaScript的数据类型有哪些?

    7、已知ID的Input输入框,如何获取这个输入框的输入值?(不使用第三方框架)

    8、根据你的理解,请简述JavaScript脚本的执行原理?

    9、DOM操作怎样添加、移除、移动、复制、创建和查找节点?

    10、说说你对json的理解?

    11、ionic和angularjs的区别?

    12、谈谈你对闭包的理解?

    13、谈谈你This对象的理解?

    14、JavaScript对象的几种创建方式?

    15、get和post的区别,何时使用post

    16、null和undefined的区别?

    17、请写出js内存泄漏的问题?

    18、哪些地方会出现css阻塞,哪些地方会出现js阻塞?

    19、对比Flash与ajax哪个好?

    20、请你解释一下事件冒泡机制

    21、请你说说split()与join() 函数的区别?

    22、说说你对Promise的理解?

    23、谈谈你对Javascript垃圾回收机制的理解?

    24、说说你对原型(prototype)理解?

    25、typeof与instanceof的区别是什么?

    26、说说你对node.js的理解

    27、NPM(包管理器)作用是什么?

    1、谈谈你对Ajax的理解?(概念、特点、作用)

    AJAX全称为“Asynchronous JavaScript And XML”(异步JavaScript和XML) 是指一种创建交互式网页应用的开发技术、改善用户体验,实现无刷新效果。

    优点

    a、不需要插件支持

    b、优秀的用户体验

    c、提高Web程序的性能

    d、减轻服务器和带宽的负担

    缺点

    a、破坏浏览器“前进”、“后退”按钮的正常功能,可以通过简单的插件弥补

    b、对搜索引擎的支持不足

    2、说说你对延迟对象deferred的理解?

    deferred对象是从jQuery 1.5.0版本开始引入的一个新功能。

    a、什么是deferred对象

    【干货分享】前端面试知识点锦集(JavaScript篇)

    开发网站的过程中,我们经常遇到某些耗时很长的javascript操作。其中,既有异步的操作(比如ajax读取服务器数据),也有同步的操作(比如遍历一个大型数组),它们都不是立即能得到结果的。

    通常的做法是,为它们指定回调函数(callback)。即事先规定,一旦它们运行结束,应该调用哪些函数。

    但是,在回调函数方面,jQuery的功能非常弱。为了改变这一点,jQuery开发团队就设计了deferred对象。

    简单说,deferred对象就是jQuery的回调函数解决方案。在英语中,defer的意思是”延迟”,所以deferred对象的含义就是”延迟”到未来某个点再执行。

    它解决了如何处理耗时操作的问题,对那些操作提供了更好的控制,以及统一的编程接口。

    b、它的主要功能,可以归结为四点:

    (1)、实现链式操作

    (2)、指定同一操作的多个回调函数

    (3)、为多个操作指定回调函数

    (4)、普通操作的回调函数接口

    3、什么是跨域,如何实现跨域访问?

    跨域是指不同域名之间相互访问。

    JavaScript同源策略的限制,A域名下的JavaScript无法操作B或是C域名下的对象

    实现:

    (1)、JSONP跨域:利用script脚本允许引用不同域下的js实现的,将回调方法带入服务器,返回结果时回调。

    (2)、跨域资源共享(CORS)

    跨域资源共享(CORS)是一种网络浏览器的技术规范,它为Web服务器定义了一种方式,允许网页从不同的域访问其资源。

    CORS与JSONP相比:

    a、 JSONP只能实现GET请求,而CORS支持所有类型的HTTP请求。

    b、 使用CORS,开发者可以使用普通的XMLHttpRequest发起请求和获得数据,比起JSONP有更好的错误处理。

    c、 JSONP主要被老的浏览器支持,它们往往不支持CORS,而绝大多数现代浏览器都已经支持了CORS。

    4、为什么要使用模板引擎?

    a、模板引擎(这里特指用于Web开发的模板引擎)是为了使用户界面与业务数据(内容)分离而产生的,它可以生成特定格式的文档,用于网站的模板引擎就会生成一个标准的HTML文档。

    b、在一些示例中javascript有大量的html字符串,html中有一些像onclick样的javascript,这样javascript中有html,html中有javascriptjs判断是后退进入页面,代码的偶合度很高js判断是后退进入页面,不便于修改与维护,使用模板引擎可以解决问题。

    5、JavaScript是一门什么样的语言,它有哪些特点?

    JavaScript 是一种脚本语言,官方名称为 ECMAScript(因定义语言的标准为 ECMA-262)。

    JS 的主要特点:

    a、语法类似于常见的高级语言,如 C 和 Java;

    b、脚本语言,不需要编译就可以由解释器直接运行;

    c、 变量松散定义,属于弱类型语言;

    d、面向对象的。

    JS 最初是为网页设计而开发的,现在也是Web 开发的重要语言。它支持对浏览器(浏览器对象模型,BOM)和HTML 文档(文档对象模型,DOM)进行操作而使网页呈现动态的交互特性。

    严格的说,JS只是ECMAScript 的一种实现,是ECMAScript和BOM、DOM组成的一种Web 开发技术。

    6、JavaScript的数据类型有哪些?

    基本数据类型:字符串 String、数字 Number、布尔Boolean

    复合数据类型:数组 Array、对象 Object

    特殊数据类型:Null 空对象、Undefined 未定义

    7、已知ID的Input输入框,如何获取这个输入框的输入值?(不使用第三方框架)

    document.getElementById("ID").value

    8、根据你的理解,请简述JavaScript脚本的执行原理?

    JavaScript是一种动态、弱类型、基于原型的语言,通过浏览器可以直接执行。

    当浏览器遇到\

    版权声明

    本文仅代表作者观点。
    本文系作者授权发表,未经许可,不得转载。

    发表评论