JS面试题 Dear 丶 2022-03-08 10:22 228阅读 0赞 **1.什么是JavaScript?** JavaScript是一种客户端脚本语言,可以插入到HTML页面中,并且是目前较热门的Web开发语言。同时,JavaScript是基于对象的编程语言。 **2.列举Java和JavaScript之间的区别?** Java是一门十分完整、成熟的编程语言。相比之下,JavaScript是一个可以被引入HTML页面的编程语言。这两种语言并不完全相互依赖,而是针对不同的意图而设计的。 Java是一种面向对象编程(OOPS)或结构化编程语言,类似的如C ++或C,而JavaScript是是基于对象的客户端脚本语言,它被称为非结构化编程。 **3.JavaScript都有哪些数据类型** ●number ●string ●boolean ●null ●undefined ●object (包括function 和 array) **4.typeof 返回值都有哪些** number — number NaN — number string — string boolean — boolean undefined — undefined null ---- object array — object object — object function — function **5.什么是未声明和未定义的变量?** 未声明的变量是程序中不存在且未声明的变量。如果程序尝试读取未声明变量的值,则会遇到运行时错误。未定义的变量是在程序中声明但尚未给出任何值的变量。如果程序尝试读取未定义变量的值,则返回未定义的值。 **6.局部变量与全局变量** 1.使用var声明变量,在方法内部是局部变量,在方法外部是全局变量 2.没有使用var声明的变量,在方法内部或外部都是全局变量,但如果是在方法内部声明,在方法外部使用之前需要先调用方法,告知系统声明了全局变量后方可在方法外部使用。 在函数作用域内 加var定义的变量是局部变量,不加var定义的就成了全局变量 在function外部, 不管有没有使用var声明变量,都是全局变量,在function外部,var关键字一般可以省略,但是为了书写规范和维护方便以及可读性好,不建议省略var关键字! **7. 说明 == 与 === 之间的区别** == 检查两个变量的值是否相等 === 检查两个变量的值和数据类型是否相等 **8.JavaScript中有哪几种弹出框** 有3种. alert为警告窗口 confirm是确认窗口 prompt信息输入窗口 **9、解释JavaScript中定时器的工作?如果有,也可以说明使用定时器的缺点?** 定时器用于在设定的时间执行一段代码,或者在给定的时间间隔内重复该代码。这通过使用函数setTimeout,setInterval和clearInterval来完成。 ●setInterval(function,delay函数用于在提到的延迟中重复执行给定的功能,只有在取消时才停止。 ●setTimeout(function,delay函数用于启动在所述延迟之后调用特定功能的定时器。 ●clearInterval(id)函数指示定时器停止。 定时器在一个线程内运行,因此事件可能需要排队等待执行。 **10.JavaScript中break、continue和return的区别** 在 javascript中break,continue和return 这三个关键字, 都有停止循环的功能,return 还有另外一个功能,就是函数返回语句,但是返回的同时也将函数停止。 下面介绍3个关键字在停止for循环中的区别: **①、break的用法** ![在这里插入图片描述][20190314201957972.png] 得到的结果是: ![在这里插入图片描述][2019031420203337.png] **②、continue的用法** ![在这里插入图片描述][20190314202120980.png] 得到的结果是: ![在这里插入图片描述][20190314202217948.png] **③、return的用法** ![在这里插入图片描述][20190314202338872.png] 得到的结果是: ![在这里插入图片描述][20190314202416635.png] 总结:以上3个案例代码都是相同的,唯一的不同就是分别运用了break、continue和return这3个关键字来阻止for循环。显而易见: break 停止了这个for循环,跳出循环来继续执行fn函数里之后的语句 continue 只是停止了当前循环,继续执行后面的循环,当循环执行完继续执行fn函数里之后的语句 return 停止了这个for循环,跳出循环并且停止执行fn函数里后边的语句 **11.例举3种强制类型转换和2种隐式类型转换?** 强制类型转换:自己通过函数来进行数据类型转换 举例:(parseInt,parseFloat,Number()) 隐式类型转换:JS引擎自动帮我们转换的 举例:==、 console.log()、 alert() 、if() 、±\*/ **12.自执行函数?好处?用于什么场景?** (function()\{ \}) **自执行函数**:声明一个匿名函数并调用 **好处**:创建一个独立的作用域,防止污染全局 **场景**:一般用于框架、插件等场景。 **13.js中this对象的指代** this对象在运行时基于函数的执行环境: 1.全局环境中 this指的是window对象 2.当前函数被当做某一个对象的方法时,函数中的this指的当前对象 3.在全局环境中,匿名函数中的this指向window **14. 节点的种类有几种,分别是什么?** (1)元素节点:nodeType ===1; (2)属性节点:nodeType ===2; (3)文本节点:nodeType ===3; **15.怎样创建、添加、移除、替换、插入、复制和查找节点?** 1)创建新节点 createDocumentFragment() //创建一个DOM片段 createElement() //创建一个具体的元素 createTextNode() //创建一个文本节点 2)添加、移除、替换、插入 appendChild() //节点后添加 removeChild() //移除 replaceChild() //替换 insertBefore() //节点前插入 cloneNode()/复制 cloneNode(true)//连同子节点一起复制 3)查找 getElementsByTagName() //通过标签名称 getElementsByName() //通过元素的Name属性的值 getElementById() //通过元素Id,唯一性 [20190314201957972.png]: /images/20220308/67a80eea24144be4b6cb8e9cc6b13d1f.png? [2019031420203337.png]: /images/20220308/8e08279a99174daeab90180bbae348c0.png [20190314202120980.png]: /images/20220308/a38f6f7830b8412eb4ecaf67654a20dc.png? [20190314202217948.png]: /images/20220308/9cf74ecdd49c49b3ad29b2df8d0b2ab9.png [20190314202338872.png]: /images/20220308/3b10b537c7cd4655a766d3ce379af724.png? [20190314202416635.png]: /images/20220308/9300054ff19a4eecb36f907fb174fe5b.png
相关 JS面试题 > JS初级开始 > 1.基本数据类型有几种?(高频) String,Boolean,Number,Null,undefiend,Symbol(es6) Symbol: 左手的ㄟ右手/ 2022年09月10日 08:18/ 0 赞/ 191 阅读
相关 js面试题 一、作用域 1、写出console.log结果(作用域) (function(){ var a = b = 2; })() con ╰半橙微兮°/ 2022年05月29日 11:48/ 0 赞/ 202 阅读
相关 js(面试题) shuffle:顾名思义,将数组随机排序,常在开发中用作实现随机功能。 我们来看看一个 shuffle 可以体现出什么代码品味。 错误举例 function 小灰灰/ 2022年05月29日 02:38/ 0 赞/ 187 阅读
相关 js面试题 > 1.JavaScript中如何检测一个变量是一个String类型?请写出函数实现 方法①: function isString(obj){ 深藏阁楼爱情的钟/ 2022年04月02日 04:42/ 0 赞/ 216 阅读
相关 js 面试题 javascript的数据类型 原始类型:null,undefined,number(数字类型),string(字符串类型),boolean(布尔值类型),symbol(e 我会带着你远行/ 2022年03月18日 11:58/ 0 赞/ 244 阅读
相关 JS面试题 1.什么是JavaScript? JavaScript是一种客户端脚本语言,可以插入到HTML页面中,并且是目前较热门的Web开发语言。同时,JavaScript是基于对象 Dear 丶/ 2022年03月08日 10:22/ 0 赞/ 229 阅读
相关 js面试题 JavaScript 的组成 JavaScript 由以下三部分组成: ECMAScript(核心):JavaScript 语言基础 DOM(文档对象模型) 客官°小女子只卖身不卖艺/ 2022年02月22日 19:00/ 0 赞/ 389 阅读
相关 js 面试题 闭包: ![复制代码][copycode.gif] function fun(n,o) { console.log(o) retur 浅浅的花香味﹌/ 2022年02月19日 01:53/ 0 赞/ 230 阅读
相关 js 面试题 1:toString function A() { this.name = "a"; this.toString = 一时失言乱红尘/ 2021年09月20日 13:26/ 0 赞/ 338 阅读
还没有评论,来说两句吧...