javascript面试记

richinfo:

1,什么情况下会出现undefined的值,并且程序不会报错!
建议:1,变量定义好了,但是未赋值的情况下;2,访问对象的属性,但该属性没有的时候;3,访问数组不存在的索引的时候;4,访问函数定义好的参数,但是参数未传进来的时候;5,函数没有显示的写return,或者return后面没有写任何值的时候,也会返回undefined

2,call和apply的区别
建议:很没意思的问题,就是参数的区别,apply的第二个参数必须是数组或者类数组,很多时候会用另外一个函数的arguments对象作为其第二个参数

3,如何用一个for循环给3个按钮绑定事件?会创建多少个闭包?
建议:自己思考一下这个场景,在javascript高级教程第三版上面有一个几乎一样的例子,可以参考一下。
这主要考的是闭包的应用:外部函数的变量i,在for循环的过程中会一直在增长,for循环结束后,值变为3,如果直接绑定,会导致所有的都事件处理函数都用到的值是3,比较好的方式是使用自执行的一个闭包函数,把i作为一个参数传递进去即可。
for(var i = 0; i < 3; i++){
btns[i].onclick = (function(innerIndex){
return function(){
//这里使用innerIndex,这个innerIndex的值将会等于for循环执行到这里的时候的那个i值
}
})(i);
}
这里循环了多少次,就会创建多少个闭包。

4,闭包的作用域在定义的时候就创建了,还是在执行的时候创建的?
建议:这个问题我记得不是很清楚了,大概他要你说出来的意思是,闭包的作用域始终是定义的那个外部函数的作用域,而内部函数在哪里执行无关。定义的时候就创建了!

5,为什么Object.prototype中的属性是无法通过for in循环遍历出来?
建议:这里涉及到对象的属性类别,有些是只读的,有些是只写的,有些

6,如何确保使用for in 循环对象的时候,不会遍历到原型的属性上面去?
建议:使用hasOwnProperty方法判断

7,JSON格式的数据,什么情况下容易出错?
建议:这个问题我没有答出来,刚刚查了下资料,应该是反斜杠的问题,参考一下这个资料:http://www.cnblogs.com/lengyuhong/archive/2012/01/07/2262390.html

8,正则表达式的分组是怎么做的?js是否支持正则表达式的分组命名?正则表达式的i,g,m分别是什么意思?
建议:以左括号出现的先后顺序分组。js不支持分组命名。i是忽略大小写,g是全局匹配,m是多行匹配。

9,nodejs了解多少?

10,浏览器的缓存机制

11,cookie

jd:

1,如果实现图片的动态加载?

2,介绍一下最近的项目上使用到的技术框架

3,

时间: 2024-10-13 23:46:22

javascript面试记的相关文章

5个经典的JavaScript面试基础问题

JavaScript程序员在IT领域中的需求量非常巨大.如果你非常精通JavaScript,你会有很多换工作.涨薪水的机会.但是在一家公司录用你之前,你必须顺利通过面试,证明你的技能.在本文中,我将向您展示5个关于JavaScript相关的问题,可以全面地测试面试者JavaScript技能和解决问题的能力.一起来看看这5个经典的JavaScript面试问题. 问题1:Scope作用范围 考虑下面的JavaScript代码: (function() { var a = b = 5; })(); c

前端JavaScript面试技巧

第1章 课程简介从几个常见面试开始,讨论针对一个题目的分析思路,总结题目对应的知识点.最后列出所有 JS 知识点的集合 -- JS 知识体系框架.1-1 课程简介(导学)1-2 前言1-3 几个面试题1-4 如何搞定所有面试题 第2章 JS基础知识(上)讲解 JS 基础语法相关的面试题,分析原理以及解答方法.这一章节讲解了基础知识的第一部分:变量的类型和计算.以及JS "三座大山" -- 原型.作用域和异步中的第一座大山:原型.2-1 变量类型和计算-12-2 变量类型和计算-22-3

JavaScript面试的完美指南(开发者视角)

为了说明 JS 面试的复杂性,首先,请尝试给出以下结果: onsole.log(2.0 == "2" == new Boolean(true) == "1") 十有八九的会给出false, 其实运行结果是true,原因请看 这里. 1) 理解 JS 函数 函数是 JavaScript 的精华,是 JS 一等公民.JS 函数不仅仅是一个普通的函数,与其他语言不同,JS 函数可以赋值给变量,作为参数传递给另一个函数,也可以从另一个函数返回. console.log(sq

26个精选的JavaScript面试问题

为了保证可读性,本文采用意译而非直译.另外,本文版权归原作者所有,翻译仅用于学习. 根据Stack Overflow 2018年年度调查报告,JavaScript已经连续6年保持最常用的编程语言的记录.对于一个全栈工程师,JavaScript可以说是一项必备语言,在面试中总会被问到.我整理了一下FullStack.Cafe上所有常见的JavaScript面试问题供大家参考: Q1: JavaScript中类型转换是怎样的?话题: JavaScript难度: 0在JavaScript中,在两个不同

抓紧面试前的宝贵时间 快速搞定前端初级JavaScript面试

第1章 课程介绍[说说面试的那些事儿]本章会出几个面试题,分析每道题目设计的知识点,然后总结出一个完整的知识体系.让我们开始 “题目->知识点->解题” 的快乐之旅吧. 第2章 JS基础-变量类型和计算[不会变量,别说你会JS]本章介绍变量的类型和计算的知识点和题目,包括值类型和引用类型区别,类型判断,深拷贝等.变量和类型是一个任何一门语言的基础,不了解的话,会被认为是 JS 语法不过关. 第3章 JS基础-原型和原型链[三座大山之一,必考!!!]本章介绍原型.原型链和 class 相关的知识

快速搞定前端初级JavaScript面试完整版

资源获取链接:点击获取完整教程 抓紧面试前的宝贵时间 快速搞定前端初级JavaScript面试 BAT资深面试官针对时下面试高频考点,帮你解决面试问题.课程不局限于简单地讲解每一个知识点,而是以面试官的角度出发,带你了解前端面试中每个“门道”与“套路”.手把手带你分析考点及解答策略,梳理JS考试体系,帮助前端新人快速通过JS面试部分. 课程紧凑,分秒必争 拒绝题海战术,绝不浪费时间解析典型面试题,分析前端面试核心考点拆解一道题,解决一类题 匠心设计,直击考点 凝聚讲师三年面试课程授课经验结合大量

JavaScript面试问题:事件委托和this

JavaScript不仅门槛低,而且是一门有趣.功能强大和非常重要的语言.各行各业的人发现自己最混乱的选择是JavaSscript编程语言.由 于有着各种各样的背景,所以不是每个人都对JavaScript及其基本原理有广泛的认识.通常来书,除非你去参加工作面试才会去思考为什么或者怎么做, 否则JavaScript只是你工作的内容. 这个系类的目标是深入探讨JavaScript的一些概念和理论.主题来自于 Darcy Clarke的JavaScript典型面试问题列表.希望你不仅仅是为了答案而阅读

javascript面试指南一(js数据类型,==和===的区别 )

我搜集很多关于js基础的面试题,和大家分享一下祝大家面试成功 Q1,javascript 数据类型有哪些? 不要小看这么问题哦,这个问题很不起眼但是又很难回答 我推荐的答案来自于<javacript语言精髓> JavaScript的简单类型包括数字.字符串.布尔值(true和false).null值和undefined值.其他所有的值都是对象.数字.字符串和布尔值“貌似”对象,因为它们拥有方法,但它们是不可变的.JavaScript中的对象是可变的键-值集合(keyed collections

25 个最基本的 JavaScript 面试问题及答案

1.使用 typeof bar === "object" 来确定 bar 是否是对象的潜在陷阱是什么?如何避免这个陷阱? 尽管 typeof bar === "object" 是检查 bar 是否对象的可靠方法,令人惊讶的是在JavaScript中 null 也被认为是对象! 因此,令大多数开发人员惊讶的是,下面的代码将输出 true (而不是false) 到控制台: var bar = null; console.log(typeof bar === "