各大互联网公司前端笔试面试题–JavaScript篇
1.JavaScript是一门什么样的语言,它有哪些特点?
没有标准答案。
2.JavaScript的数据类型都有什么?
基本数据类型:String,boolean,Number,Undefined, Null
引用数据类型:Object(Array,Date,RegExp,Function)
那么问题来了,如何判断某变量是否为数组数据类型?
?方法一.判断其是否具有“数组性质”,如slice()方法。可自己给该变量定义slice 方法,故有时会失效
?方法二.objinstanceof Array 在某些IE版本中不正确
?方法三.方法一二皆有漏洞,在ECMA Script5中定义了新方法Array.isArray(), 保证其兼容性,最好的方法如下:
3.已知ID的Input输入框,希望获取这个输入框的输入值,怎么做?(不使用第三方框架)
4.希望获取到页面中所有的checkbox怎么做?(不使用第三方框架)
5.设置一个已知ID的DIV的html内容为xxxx,字体颜色设置为黑色(不使用第三方框架)
6.当一个DOM节点被点击时候,我们希望能够执行一个函数,应该怎么做??直接在DOM里绑定事件:
?在JS里通过onclick绑定:xxx.onclick = test
?通过事件添加进行绑定:addEventListener(xxx, …click?, test)
那么问题来了,Javascript的事件流模型都有什么?
?“事件冒泡”:事件开始由最具体的元素接受,然后逐级向上传播
?“事件捕捉”:事件由最不具体的节点先接收,然后逐级向下,一直到最具体的
?“DOM事件流”:三个阶段:事件捕捉,目标阶段,事件冒泡
7.什么是Ajax和JSON,它们的优缺点。
Ajax是异步JavaScript和XML,用于在Web页面中实现异步数据交互。
优点:
?可以使得页面不重载全部内容的情况下加载局部内容,降低数据传输量?避免用户不断刷新或者跳转页面,提高用户体验
缺点:
?对搜索引擎不友好(
?要实现ajax下的前后退功能成本较大
?可能造成请求数的增加
?跨域问题限制
JSON是一种轻量级的数据交换格式,ECMA的一个子集
优点:轻量级、易于人的阅读和编写,便于机器(JavaScript)解析,支持复合数据类型(数组、对象、字符串、数字)
8.看下列代码输出为何?解释原因。
解释:Undefined是一个只有一个值的数据类型,这个值就是“undefined”,在使用var声明变量但并未对其赋值进行初始化时,这个变量的值就是undefined。而b由于未声明将报错。注意未申明的变量和声明了未赋值的是不一样的。
9.看下列代码,输出什么?解释原因。
解释:null是一个只有一个值的数据类型,这个值就是null。表示一个空指针对象,所以用typeof检测会返回”object”。
10.看下列代码,输出什么?解释原因。
?undefined与null相等,但不恒等(===)
?一个是number一个是string时,会尝试将string转换为number
?尝试将boolean转换为number,0或1
?尝试将Object转换成number或string,取决于另外一个对比量的类型
?所以,对于0、空字符串的判断,建议使用“===”。“===”会先判断两边的值类型,类型不匹配时为false。
那么问题来了,看下面的代码,输出什么,foo的类型为什么?
执行完后foo的值为111,foo的类型为Number。
执行完后foo的值为113,foo的类型为String。
11.看代码给答案。
答案:2(考察引用数据类型细节)
12.已知数组var stringArray = [“This”,“is”,“Baidu”,“Campus”],Alert 出”This is Baidu Campus”。
答案:alert(stringArray.join(“”))
已知有字符串foo=”get-element-by-id”,写一个function将其转化成驼峰表示法”getElementById”。
(考察基础API)
13.var numberArray = [3,6,2,4,1,5]; (考察基础API)
1) 实现对该数组的倒排,输出[5,1,4,2,6,3]
2) 实现对该数组的降序排列,输出[6,5,4,3,2,1]
14.输出今天的日期,以YYYY-MM-DD的方式,比如今天是2014年9月26日,则输出2014-09-26
15.将字符串”
答
案:”
16.为了保证页面输出安全,我们经常需要对一些特殊的字符进行转义,请写一个函数escapeHtml,将<, >, &, “进行转义
17.foo = foo||bar ,这行代码是什么意思?为什么要这样写?
答案:if(!foo) foo = bar; //如果foo存在,值不变,否则把bar的值赋给foo。
短路表达式:作为”&&”和”||”操作符的操作数表达式,这些表达式在进行求值时,只要最终的结果已经可以确定是真或假,求值过程便告终止,这称之为短路求值。
18.看下列代码,将会输出什么?(变量声明提升)
答案:输出undefined 和2。上面代码相当于:
函数声明与变量声明会被JavaScript引擎隐式地提升到当前作用域的顶部,但是只提升名称不会提升赋值部分。
19.用js实现随机选取10–100之间的10个数字,存入一个数组,并排序。
20.把两个数组合并,并删除第二个元素。
21.怎样添加、移除、移动、复制、创建和查找节点(原生JS,实在基础,没细写每一步)
1)创建新节点
createDocumentFragment() //创建一个DOM片段
createElement() //创建一个具体的元素
createTextNode() //创建一个文本节点
2)添加、移除、替换、插入
appendChild() //添加
removeChild() //移除
replaceChild() //替换
insertBefore() //插入
3)查找
getElementsByTagName() //通过标签名称
getElementsByName() //通过元素的Name属性的值
getElementById() //通过元素Id,唯一性
22.有这样一个URL:https://www.wendangku.net/doc/a511700549.html,/item.htm?a=1&b=2&c=&d=xxx&e,请写一段JS程序提取URL中的各个GET参数(参数名和参数个数不确定),将其按key-value形式返回到一个json结构中,如{a:?1′,b:?2′,c:”,d:?xxx?, e:undefined}。答案:
23.正则表达式构造函数varreg=new RegExp(“xxx”)与正则表达字面量varreg=//有什么不同?匹配邮箱的正则表达式?
答案:当使用RegExp()构造函数的时候,不仅需要转义引号(即\”表示”),并且还需要双反斜杠(即\\表示一个\)。使用正则表达字面量的效率更高。
邮箱的正则匹配:
24.看下面代码,给出输出结果。
答案:4 4 4。
原因:Javascript事件处理器在线程空闲之前不会运行。那么问题来了,如何让上述代码输出1 2 3?
25.写一个function,清除字符串前后的空格。(兼容所有浏览器)
使用自带接口trim(),考虑兼容性:
26.Javascript中callee和caller的作用?
答案:
caller是返回一个对函数的引用,该函数调用了当前函数;
callee是返回正在被执行的function函数,也就是所指定的function对象的正文。那么问题来了?如果一对兔子每月生一对兔子;一对新生兔,从第二个月起就开始生兔子;假定每对兔子都是一雌一雄,试问一对兔子,第n个月能繁殖成多少对兔子?(使用callee完成)
中级Javascript:
1.实现一个函数clone,可以对JavaScript中的5种主要的数据类型(包括Number、String、Object、Array、Boolean)进行值复制
考察点1:对于基本数据类型和引用数据类型在内存中存放的是值还是指针这一区别是否清楚
?考察点2:是否知道如何判断一个变量是什么类型的?考察点3:递归算法的设计
2.如何消除一个数组里面重复的元素?
3.小贤是一条可爱的小狗(Dog),它的叫声很好听(wow),每次看到主人的时候就会乖乖叫一声(yelp)。从这段描述可以得到以下对象:
小芒和小贤一样,原来也是一条可爱的小狗,可是突然有一天疯了(MadDog),一看到人就会每隔半秒叫一声(wow)地不停叫唤(yelp)。请根据描述,按示例的形式用代码来实。(继承,原型,setInterval)
答案:
4.下面这个ul,如何点击每一列的时候alert其index?(闭包)
答案:
5.编写一个JavaScript函数,输入指定类型的选择器(仅需支持id,class,tagName 三种简单CSS选择器,无需兼容组合选择器)可以返回匹配的DOM节点,需考虑浏览器兼容性和性能。
/*** @param selector {String} 传入的CSS选择器。* @return {Array}*/
答案:(过长,点击打开)
6.请评价以下代码并给出改进意见。
各大知名公司校园招聘经典常见面试题集锦 一.自我认识类 1.你的缺点是什么?如果我们淘汰你,你认为原因是什么? (华为公司2011校招面试题,分享人:彭红) 2.你最骄傲的经历是什么?描述一个你与人合作共同完成目标的经历。 (2011宝洁校招面试题,分享人:彭红) 3.请详细描述一下你理想中的未来工作环境及每日工作内容。举例说明一件在 校期间你认为最有成就感和最失败的事。 (三星集团2010校招面试题,分享人:李玉娇) 4.你能不能喝酒? (中国银行总行2009招聘面试题,分享人:何轶男) 5.依靠你的专业素养能给团队带来哪些帮助?用三个词形容你的大学生活。(中 国建设银行苏州分行2010校招面试题,分享人:张栩萌) 6.你的梦想是什么,为此做了哪些努力?(优衣库2010校招面试题,分享人: 张栩萌) 7.你生活中有没有遇到过挫折?是如何面对的? (腾讯2009校招面试题,分享人:刘妍) 8.你心目中的另一半是什么样子? (东莞银行2012面试题,分享人:刁媛、万宝军) 9.请用一句话总结自己二十年的人生感悟。 (飞亚达2012面试题,分享人:吴念菲)
10.你遇到的最大挫折和获得的最大成就是什么? (上海交通大学2012研究生复试题,分享人:游昕琦、李如诗) 11.你最大的缺点是什么? (汇丰银行2012管培生面试,分享人:李立彬、杨玮希) 12.你平时有什么爱好?你一开始是选择银行作为实习单位,后来为什么要来中 国移动呢? (深圳移动2012面试题,分享人:陈奥、江程) 13.举例说明你怎样获得一种技能,并将其转化为实践。 (宝洁2012面试题,分享人:陈思蕾、杨媛颖) 14.你对未来的职业规划是怎么样的? (毕马威2012面试题,分享人:唐寅、雷静晗) 15.说说你所知道的RBS。讲一个你所遇到的困难,如何克服?说说你最大的缺 点。 (苏格兰皇家银行2012全球实习生面试,分享人:杨玮希) 16.你平时爱看什么书报杂志?你除了专业课,最喜欢的课是什么? (淡马锡投资2012中国管培生面试题,分享人:杨玮希) 17.你希望与什么样的上级共事? (中国农业银行宜昌分行2012面试题,分享人:向思凤、赵长龙) 18.你认为将来会是什么原因让你离职? (建行四川省分行2012面试题,分享人:李冀明、李阳) 19.请简要谈谈你的兴趣爱好。 (建行江苏分行2012面试题,分享人:王秋蕾、张静秋)
1:什么是同步逻辑和异步逻辑?(汉王) 同步逻辑是时钟之间有固定的因果关系。异步逻辑是各时钟之间没有固定的因果关系。 同步时序逻辑电路的特点:各触发器的时钟端全部连接在一起,并接在系统时钟端,只有当时钟脉冲到来时,电路的状态才能改变。改变后的状态将一直保持到下一个时钟脉冲的到来,此时无论外部输入x 有无变化,状态表中的每个状态都是稳定的。 异步时序逻辑电路的特点:电路中除可以使用带时钟的触发器外,还可以使用不带时钟的触发器和延迟元件作为存储元件,电路中没有统一的时钟,电路状态的改变由外部输入的变化直接引起。 2:同步电路和异步电路的区别: 同步电路:存储电路中所有触发器的时钟输入端都接同一个时钟脉冲源,因而所有触发器的状态的变化都与所加的时钟脉冲信号同步。 异步电路:电路没有统一的时钟,有些触发器的时钟输入端与时钟脉冲源相连,只有这些触发器的状态变化与时钟脉冲同步,而其他的触发器的状态变化不与时钟脉冲同步。 3:时序设计的实质: 时序设计的实质就是满足每一个触发器的建立/保持时间的要求。 4:建立时间与保持时间的概念? 建立时间:触发器在时钟上升沿到来之前,其数据输入端的数据必须保持不变的最小时间。保持时间:触发器在时钟上升沿到来之后,其数据输入端的数据必须保持不变的最小时间。 5:为什么触发器要满足建立时间和保持时间? 因为触发器内部数据的形成是需要一定的时间的,如果不满足建立和保持时间,触发器将进入亚稳态,进入亚稳态后触发器的输出将不稳定,在0和1之间变化,这时需要经过一个恢复时间,其输出才能稳定,但稳定后的值并不一定是你的输入值。这就是为什么要用两级触发器来同步异步输入信号。这样做可以防止由于异步输入信号对于本级时钟可能不满足建立保持时间而使本级触发器产生的亚稳态传播到后面逻辑中,导致亚稳态的传播。 (比较容易理解的方式)换个方式理解:需要建立时间是因为触发器的D端像一个锁存器在接受数据,为了稳定的设置前级门的状态需要一段稳定时间;需要保持时间是因为在时钟沿到来之后,触发器要通过反馈来锁存状态,从后级门传到前级门需要时间。 6:什么是亚稳态?为什么两级触发器可以防止亚稳态传播? 这也是一个异步电路同步化的问题。亚稳态是指触发器无法在某个规定的时间段内到达一个可以确认的状态。使用两级触发器来使异步电路同步化的电路其实叫做“一位同步器”,他只能用来对一位异步信号进行同步。两级触发器可防止亚稳态传播的原理:假设第一级触发器的输入不满足其建立保持时间,它在第一个脉冲沿到来后输出的数据就为亚稳态,那么在下一个脉冲沿到来之前,其输出的亚稳态数据在一段恢复时间后必须稳定下来,而且稳定的数据必须满足第二级触发器的建立时间,如果都满足了,在下一个脉冲沿到来时,第二级触发器将不会出现亚稳态,因为其输入端的数据满足其建立保持时间。同步器有效的条件:第一级触发器进入亚稳态后的恢复时间+ 第二级触发器的建立时间< = 时钟周期。
Web前端开发笔试题集锦 HTML/CSS篇 1, 判断字符串是否是这样组成的,第一个必须是字母,后面可以是字母、数字、下划线,总长度为5-20 var reg = /^[a-zA-Z][a-zA-Z_0-9]{4,19}$/; reg.test("a1a__a1a__a1a__a1a__"); 2,截取字符串abcdefg的efg var str = "abcdefg"; if (/efg/.test(str)) { var efg = str.substr(str.indexOf("efg"), 3); alert(efg); } 3,判断一个字符串中出现次数最多的字符,统计这个次数 //将字符串的字符保存在一个hash table中,key是字符,value是这个字符出现的次数 var str = "abcdefgaddda"; var obj = {}; for (var i = 0, l = str.length; i < l; i++) { var key = str[i]; if (!obj[key]) { obj[key] = 1; } else { obj[key]++; } } /*遍历这个hash table,获取value最大的key和value*/ var max = -1; var max_key = ""; var key; for (key in obj) { if (max < obj[key]) { max = obj[key]; max_key = key; } } alert("max:"+max+" max_key:"+max_key); 4,IE与FF脚本兼容性问题 (1) window.event: 表示当前的事件对象,IE有这个对象,FF没有,FF通过给事件处理函数传递事件对象 (2) 获取事件源
HTML是一种基本的WEB网页设计语言,XHTML是一个基于XML的置标语言。最主要的不同: (1)XHTML元素必须被正确地嵌套 (2)XHTML元素必须被关闭 (3)XHTML标签名必须用小写字母 (4)XHTML文档必须拥有根元素 2.什么是语义化的HTML html5的语义化是指用正确的标签包含正确的容,比如nav标签就应该包含导航条容 (1)直观的认识标签对于搜索引擎的抓取有好处,用正确的标签做正确的事情! (2)html语义化就是让页面的容结构化,便于对浏览器、搜索引擎解析 (3)在没有CCS样式情况下也以一种文档格式显示,并且是容易阅读的。搜索引擎的爬虫依赖于标记来确定上下和各个关键字的权重,利于SEO。 (4)使阅读源代码的人更容易将分块,便于阅读维护理解。 写一段语义的html代码(HTML5中新增加的很多标签如:
【经典·面试】世界500强经典面试题,附答案 1、有十筐苹果,每筐里有十个,共100个,每筐里苹果的重量都是一样,其中有九筐每个苹果的重量都是1斤,另一筐中每个苹果的重量都是0.9斤,但是外表完全一样,用眼看或用手摸无法分辨。现在要你用一台普通的大秤一次把这筐重量轻的找出来。 答案:从第一筐中拿出一个,第二筐中拿出两个,第十筐拿出十个,一起放在称上称。如果每个苹果一斤重,就应该是55斤。假设称出是54.9斤,则说明,从第一筐中拿出那个苹果是九两的,也就是说第一筐的苹果是九两重的。如果称出是54.8斤,也就是说差2两,而又只有一筐苹果中的每个都是九两重的,所以一定是第二筐中拿出两个是9两重,也就是说第二筐的苹果是九两重的。按这样推理下去,应该明白吧!! 2、我有一堆绳子,这些绳子之间粗细长短各不相同,每一条绳子本身各处的粗细长短也各不相同。但是每条绳子的燃烧时间都是60秒,试问我要测量15秒的时间,我该如何做? 1. 同时点燃任意两根绳子,第一根绳子点两头,第二根绳子点一头; 2. 等第一根绳子烧完后,点燃第二根绳子的另一头,让两头同时燃烧,并开始计时; 3. 在第二根绳子烧尽时停止计时,即可得15秒的时间。 因为题目中给出一个条件:一堆绳子,长短粗细各不相同,也不均匀。 也就是说每根绳子从头到尾都是不均匀的,并非只是绳子与绳子不同。 那么~~虽然单根绳子总的燃烧时间为60秒,但若取半根则未必是30秒, 四分之一根未必是15秒啊~~~~~~~ 若假定了一个默认的条件:就是单根绳子是均匀的。因此,必然会导致错误的结果。 3、有一堆垃圾,规定要由王三户人家清理。户因外出没能参加,留下9元钱做代劳费。王户上午起早干了5小时,户下午接着干了4小时刚好干完。问王户和户应怎样分配这9元钱? 答案:不能简单地认为王户应得5元,户应得4元。不加分析而想当然办事往往搞错。应该知道,王两户所做的工作中,除帮户外,还有他们自己的任务。很明显,每户的工作量为3小时。王帮干了2小时,帮干了1小时,王帮的工作量是帮的2倍,得到的报酬当然也应该是的2倍。因此,王应得6元,应得3元。 4、一天有个年轻人来到王老板的店里买了一件礼物这件礼物成本是18元,标价是21元。结果是这个年轻人掏出100元要买这件礼物。王老板当时没有零钱,用那100元向街坊换了100元的零钱,找给年轻人79元。但是街坊後来发现那100元是假钞,王老板无奈还了街坊100元。现在问题是:王老板在这次交易中到底损失了多少钱?
前端开发的面试题 web前端面试题 以下是收集一些面试中经常会遇到的经典面试题以及自己面试过程中无法解决的问题,通过对知识的整理以及经验的总结,重新巩固自身的前端基础知识。 1.对WEB标准以及W3C的理解与认识 标签闭合、标签小写、不乱嵌套、提高搜索机器人搜索几率、使用外链css和js脚本、结构行为表现的分离、文件下载与页面速度更快、内容能被更多的用户所访问、内容能被更广泛的设备所访问、更少的代码和组件,容易维护、改版方便,不需要变动页面 内容、提供打印版本而不需要复制内容、提高网站易用性; 2.xhtml和html有什么区别 HTML是一种基本的WEB语言,XHTML是一个基于XML的置标语言 最主要的不同: XHTML 元素必须被正确地嵌套。 XHTML 元素必须被关闭。 标签名必须用小写字母。 XHTML 文档必须拥有根元素。 3.Doctype? 严格模式与混杂模式-如何触发这两种模式,区分它们有何意义? 用于声明文档使用那种规范(html/Xhtml)一般为严格过度基于框架的html文档 加入XMl声明可触发,解析方式更改为IE5.5 拥有IE5.5的bug 4.行内元素有哪些?块级元素有哪些?CSS的盒模型? 块级元素:div p h1 h2 h3 h4 form ul 行内元素: a b br i span input select Css盒模型:内容,border ,margin,padding 5.CSS引入的方式有哪些? link和@import的区别是?
内联内嵌外链导入 区别:同时加载 前者无兼容性,后者CSS2.1以下浏览器不支持 Link 支持使用script改变样式,后者不可 6.CSS选择符有哪些?哪些属性可以继承?优先级算法如何计算?内联和important哪个优先级高? 标签选择符类选择符 id选择符 继承不如指定 Id>class>标签选择 后者优先级高 7.前端页面有哪三层构成,分别是什么?作用是什么? 结构层 Html 表示层 CSS 行为层 js 8.css的基本语句构成是? 选择器{属性1:值1;属性2:值2;……} 9.你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么? Ie(Ie内核) 火狐(Gecko) 谷歌(webkit) opear(Presto) 10.写出几种IE6 BUG的解决方法 1.双边距BUG float引起的使用display 2.3像素问题使用float引起的使用dislpay:inline -3px 3.超链接hover 点击后失效使用正确的书写顺序 link visited hover active 4.Ie z-index问题给父级添加position:relative 5.Png 透明使用js代码改 6.Min-height 最小高度 !Important 解决’ 7.select 在ie6下遮盖使用iframe嵌套
这篇文章将分为三部分css和html为一部分,js、jQuery为一部分,vue与性能优化为一部分,今天会先整理css与html 1,弹性盒布局 父级设置display:flex将对象作为弹性伸缩盒显示 采用Flex布局的元素,被称为Flex容器(flex container),简称“容器”。其所有子元素自动成为容器成员,成为Flex项目(Flex item),简称“项目”。 容器默认生成两根主轴,水平方向主轴(main axis)和垂直方向交叉轴(cross axis),默认项目按主轴排列。 设置在容器上的属性有6种 分别为 flex-direction:决定主轴的方向(即项目的排列方向) flex-wrap:定义换行情况 flex-flow:flex-direction和flex-wrap的简写,默认row nowrap justify-content:定义项目在主轴上的对齐方式。 align-item:定义在交叉轴上的对齐方式 align-content:定义多根轴线的对齐方式 详细属性值请参阅文档 2,html5新标签与新功能 新标签: header,footer,article,aside,nav,section,time,progress, ruby,mark.... 新功能: vidio,audio,canvas,拖放,离线应用,web存储(sessionStorage,localStorage,sessionStorage 方法针对一个session 进行数据存储。当用户关闭浏览器窗口后,数据会被删除,localStorage 对象存储的数据没有时间限制。第二天、第二周或下一年之后,数据依然可用),历史状态管理,地理位置,新增input类型(color、date、datetime、datetime-local、email、month、number、range、search、tel、time、url、week),新增表单元素,WebSocket 3、css3的新特性 属性选择器:[attribute],[attribute=value],[attribute~=value]... 伪类选择器::first-letter ,:first-line,:first-child.... 伪元素选择器::before,:after border:border-image,border-radius,box-shadow 背景:background-size,background-origin,background-clip,background-image 渐变:线性渐变(Linear Gradients)径向渐变(Radial Gradients)
各大知名公司校园招聘经典常见面试题集锦一.自我认识类 1. 你的缺点是什么?如果我们淘汰你,你认为原因是什么? (华为公司2011校招面试题,分享人:彭红) 2. 你最骄傲的经历是什么?描述一个你与人合作共同完成目标的经历。 (2011宝洁校招面试题,分享人:彭红) 3. 请详细描述一下你理想中的未来工作环境及每日工作内容。举例说明一件在 校期间你认为最有成就感和最失败的事。 (三星集团2010校招面试题,分享人:李玉娇) 4. 你能不能喝酒? (中国银行总行2009招聘面试题,分享人:何轶男)5. 依靠你的专业素养能给团队带来哪些帮助?用三个词形容你的大学生活。(中
国建设银行苏州分行2010校招面试题,分享人:张栩萌) 6. 你的梦想是什么,为此做了哪些努力?(优衣库2010校招面试题,分享人: 张栩萌) 7. 你生活中有没有遇到过挫折?是如何面对的? (腾讯2009校招面试题,分享人:刘妍) 8. 你心目中的另一半是什么样子? (东莞银行2012面试题,分享人:刁媛、万宝军)9. 请用一句话总结自己二十年的人生感悟。 (飞亚达2012面试题,分享人:吴念菲) 10.你遇到的最大挫折和获得的最大成就是什么? (上海交通大学2012研究生复试题,分享人:游昕琦、李如诗) 11.你最大的缺点是什么? (汇丰银行2012管培生面试,分享人:李立彬、杨玮希)
12.你平时有什么爱好?你一开始是选择银行作为实习单位,后来为什么要来中 国移动呢? (深圳移动2012面试题,分享人:陈奥、江程) 13.举例说明你怎样获得一种技能,并将其转化为实践。 (宝洁2012面试题,分享人:陈思蕾、杨媛颖)14.你对未来的职业规划是怎么样的? (毕马威2012面试题,分享人:唐寅、雷静晗)15.说说你所知道的RBS。讲一个你所遇到的困难,如何克服?说说你最大的缺 点。 (苏格兰皇家银行2012全球实习生面试,分享人:杨玮希) 16.你平时爱看什么书报杂志?你除了专业课,最喜欢的课是什么? (淡马锡投资2012中国管培生面试题,分享人:杨玮希)
工作动机、个人愿望 ?问题:请给我们谈谈你自己的一些情况 ?回答:简要的描述你的相关工作经历以及你的一些特征,包括与人相处的能力和个人的性格特征。如果你一下子不能够确定面试者到底需要什么样的内容,你可以这样说: “有没有什么您特别感兴趣的范围?” ?点评:企业以此来判断是否应该聘用你。通过你的谈论,可以看出你想的是如何为公司效力还是那些会影响工作的个人问题。当然,还可以知道你的一些背景。 问题:你是哪年出生的?你是哪所大学毕业的?等等 回答:我是XXXX年出生的。我是XX大学毕业的。 ?点评:这类问题至为关键的是要针对每个问题简洁明了的回答,不可拖泥带水,也不必再加什么说明。完全不必再画蛇添足的说“我属X,今年XX岁”之类的话。至于专业等 或许主考官接下来的问题就是针对此而言的,故而不必迫不及待和盘托出。 ?问题:你认为对你来说现在找一份工作是不是不太容易,或者你很需要这份工作? ?回答: ? 1.是的。 ? 2.我看不见得。 ?点评: ?一般按1回答,一切便大功告成。 ?有些同学为了显示自己的“不卑不亢“,强调个人尊严,故按2回答。结果,用人单位打消了录用该生的念头,理由是:“此人比较傲“一句话,断送了该生一次较好的就 业机会。 ?问题:为何辞去原来的工作? ?回答:工作地点离家较远,路上花费时间多,发生交通问题时,影响工作。贵公司的工作岗位更适合自己专业(个性)的发展。 ?点评:为了避免应聘者以相同的原因辞职,公司尽量能做到对这方面原因的了解,有助于创造一个良好的工作环境和人际氛围。因此,应聘者最好说出对方能信服的理由。 如果自己确有缺点,要说出“将尽量克服自己缺点”,作为有信心改变这类情况的答复。 ?问题:你是怎么应聘到我们公司的?
1. 要动态改变层中内容可以使用的方法有(AB ) a)innerHTML b)innerText c)通过设置层的隐藏和显示来实现 d)通过设置层的样式属性的display属性 2. 在javascript里,下列选项中不属于数组方法的是(B); a)sort() b)length() c)concat() d)reverse() 3 、var emp = new Array(3); for(var i in emp) 以下答案中能与for循环代码互换的是: (选择一项)。(D ) A for(var i =0; i c)getElementsByName() d)bgColor() 6. 、display属性值的常用取值不包括(C ) a)inline b)block c)hidden d)none 7. 以下有关pixelTop属性与top属性的说法正确的是。(D ) a)都是Location对象的属性 b)使用时返回值都是字符串 c)都是返回以像素为单位的数值 d)以上都不对 8. 使用open方法打开具有浏览器工具条,地址栏,菜单栏的窗 口,下列选项正确的是__D__ a)open("x.html","HI","toolbas=1,scrollbars=1,status=1"); b)open("HI","scrollbars=1,location=1,status=1"); c)open("x.html","status=yes,menubar=1,location=1"); d)open("x.html","HI","toolbas=yes,menubar=1,location=1"); 9. 、javascript中表达式parseInt(“X8X8”)+paseFloat(‘8’)的结果是什么?( C) a)8+8 b)88 c)16 d)“8”+’8 10. 关于setTimeout(“check”,10)中说法正确的是( D) 1.行内元素和块级元素有哪些?有什么区别? 块级: 比较经典(闭卷,100分钟完卷,最好写出解题步骤),若你能答对百分之七八十,说明你一只脚踏进了linux 编程的大门,若你能答对百分之九十以上,你收我做弟子(可怜可怜我吧),你若不及格,那就跟我一样:菜鸟! 一、基础题: 1.请列举出你用过的LINUX发行版及其中的GCC版本、GLIB版本 2.ISO七层参考模型中的PPP协议、HTTP协议处于哪一层? 3.说出TCP和UDP的相同和不同之处 4.IP数据包头部是多长?146.0.0.0属于哪一类IP地址? 5.请写出linux嵌入式系统开发过程 6.在以下列举的GCC中的参数,请一一写出代表的意思: -c -o -share -static 7.写出以下参数的含义: _attribute_ (packet) volatile #define ANYONE((DIR)< (FILE)< 二、程序阅读题(输出程序结果): 1.按值和按地址传递(此题太简单,略) 2.指针的取地址和取值、指针运算操作(比较简单,略) 3.char *p; p=malloc(20); char q*; q=strcpy(p,"Please answer the question carefully"); q+=7; printf("%s",q); printf("%s",p); 4.#define X 1 #define Y X+1 int p; p=x+y/2; printf("%d",p); 5.struct n{ int p; char name; }a; void structp(struct n b) { b.p=10; https://www.wendangku.net/doc/a511700549.html,='X'; } int main() { int x=5; char name='Y'; a.p=x; https://www.wendangku.net/doc/a511700549.html,=name; structp(a); printf("%d",a.p); printf("%c",https://www.wendangku.net/doc/a511700549.html,); } 6.略(记不清楚了,好像是字符串操作题) 7.略(结构和双链表,此题比较难,花时间多) 8.分析以下程序,写出结果 V oid GetMemory2(char **p, int num) { *p = (char *)malloc(num); } void Test(void) { char *str = NULL; GetMemory(&str, 100); strcpy(str, "hello"); printf(str); } 9.分析以下程序,写出结果 char *GetMemory(void) { char p[] = "hello world"; return p; } void Test(void) { char *str = NULL; str = GetMemory(); printf(str); } 三、程序写作题: 1.用C语言实现下现函数(不能调用库函数) char *strcpy(char *dest,const char *src) 为什么此字符串拷贝函数还要返回一个字符指针? web前端开发面试题汇总 1天前653浏览2评论 前端面试题汇总 HTML&CSS 1. 常用那几种浏览器测试?有哪些内核(Layout Engine)? (Q1) 浏览器:IE,Chrome,FireFox,Safari,Opera。 (Q2) 内核:Trident,Gecko,Presto,Webkit。 2. 说下行内元素和块级元素的区别?行内块元素的兼容性使用? (IE8 以下) 行内元素:会在水平方向排列,不能包含块级元素,设置width无效,height无效(可以设置line-height),margin上下无效,padding上下无效。 块级元素:各占据一行,垂直方向排列。从新行开始结束接着一个断行。 兼容性:display:inline-block;display:inline;zoom:1; 3. 清除浮动有哪些方式?比较好的方式是哪一种? (1)父级div定义height。 (2)结尾处加空div标签clear:both。 (3)父级div定义伪类:after和zoom。 (4)父级div定义overflow:hidden。 (5)父级div定义overflow:auto。 (6)父级div也浮动,需要定义宽度。 (7)父级div定义display:table。 (8)结尾处加br标签clear:both。 总结:比较好的是第3种方式,简洁方便。 4. box-sizing常用的属性有哪些?分别有什么作用? 常用的属性:box-sizing: content-box border-box inherit; 作用:content-box:宽度和高度分别应用到元素的内容框。在宽度和高度之外绘制元素的内边距和边框(元素默认效果)。 border-box:元素指定的任何内边距和边框都将在已设定的宽度和高度内进行绘制。通过从已设定的宽度和高度分别减去边框和内边距才能得到内容的宽度和高度。 5. Doctype作用?标准模式与兼容模式各有什么区别? (Q1) 告知浏览器的解析器用什么文档标准解析这个文档。DOCTYPE不存在或格式不正确会导致文档以兼容模式呈现。 (Q2) 标准模式的排版和JS运作模式都是以该浏览器支持的最高标准运行。在兼容模式中,页面以宽松的向后兼容的方式显示,模拟老式浏览器的行为以防止站点无法工作。 6. HTML5 为什么只需要写< Doctype html>? HTML5不基于SGML,因此不需要对DTD进行引用;但是需要doctype来规范浏览器的行为(让浏览器按照它们应该的方式来运行)。而HTML4.01基于SGML,所以需要对DTD进行引用,才能告知浏览器文档所使用的文档类型。 7. 页面导入样式时,使用link和@import有什么区别? (1)link属于XHTML标签,除了加载CSS外,还能用于定义RSS, 定义rel连接属性等作用;而@import是CSS提供的,只能用于加载CSS; (2)页面被加载的时,link会同时被加载,而@import引用的CSS会等到页面 1、常用那几种浏览器测试?有哪些内核(Layout Engine)? 答: (Q1) 浏览器:IE,Chrome,FireFox,Safari,Opera。 (Q2) 内核:Trident,Gecko,Presto,Webkit。 2、说下行内元素和块级元素的区别?行内块元素的兼容性使用?(IE8 以下)答: (Q1) 行内元素:会在水平方向排列,不能包含块级元素,设置width无效,height无效(可以设置line-height),margin上下无效,padding上下无效。 块级元素:各占据一行,垂直方向排列。从新行开始结束接着一个断行。 (Q2) 兼容性:display:inline-block;*display:inline;*zoom:1; 3、清除浮动有哪些方式?比较好的方式是哪一种? 答: (Q1) (1)父级div定义height。 (2)结尾处加空div标签clear:both。 (3)父级div定义伪类:after和zoom。 (4)父级div定义overflow:hidden。 (5)父级div定义overflow:auto。 (6)父级div也浮动,需要定义宽度。 (7)父级div定义display:table。 (8)结尾处加br标签clear:both。 (Q2) 比较好的是第3种方式,好多网站都这么用。 4、box-sizing常用的属性有哪些?分别有什么作用? 答: (Q1)box-sizing: content-box|border-box|inherit; (Q2)content-box:宽度和高度分别应用到元素的内容框。在宽度和高度 之外绘制元素的内边距和边框(元素默认效果)。 border-box:元素指定的任何内边距和边框都将在已设定的宽度和高度内 进行绘制。通过从已设定的宽度和高度分别减去边框和内边距才能得到内容的 宽度和高度。 5、Doctype作用?标准模式与兼容模式各有什么区别? 答: (Q1) 告知浏览器的解析器用什么文档标准解析这个文档。DOCTYPE不 存在或格式不正确会导致文档以兼容模式呈现。 (Q2) 标准模式的排版和JS运作模式都是以该浏览器支持的最高标准运行。在兼容模式中,页面以宽松的向后兼容的方式显示,模拟老式浏览器的行为以防 止站点无法工作。 6、HTML5 为什么只需要写? 微软十五道面试题 1、有一个整数数组,请求出两两之差绝对值最小的值, 记住,只要得出最小值即可,不需要求出是哪两个数。 2、写一个函数,检查字符是否是整数,如果是,返回其整数值。 (或者:怎样只用4行代码编写出一个从字符串到长整形的函数?) 3、给出一个函数来输出一个字符串的所有排列。 4、请编写实现malloc()内存分配函数功能一样的代码。 给出一个函数来复制两个字符串A和B。字符串A的后几个字节和字符串B的前几个字节重叠。 5、怎样编写一个程序,把一个有序整数数组放到二叉树中? 6、怎样从顶部开始逐层打印二叉树结点数据?请编程。 7、怎样把一个链表掉个顺序(也就是反序,注意链表的边界条件并考虑空链表)? 8、请编写能直接实现int atoi(const char * pstr)函数功能的代码。 9、编程实现两个正整数的除法 编程实现两个正整数的除法,当然不能用除法操作符。 // return x/y. int div(const int x, const int y) { .... } 10、在排序数组中,找出给定数字的出现次数 比如[1, 2, 2, 2, 3] 中2的出现次数是3次。 11、平面上N个点,每两个点都确定一条直线, 求出斜率最大的那条直线所通过的两个点(斜率不存在的情况不考虑)。时间效率越高越好。 12、一个整数数列,元素取值可能是0~65535中的任意一个数,相同数值不会重复出现。0是例外,可以反复出现。请设计一个算法,当你从该数列中随意选取5个数值,判断这5个数值是否连续相邻。 注意: - 5个数值允许是乱序的。比如:8 7 5 0 6 - 0可以通配任意数值。比如:8 7 5 0 6 中的0可以通配成9或者4 - 0可以多次出现。 - 复杂度如果是O(n2)则不得分。 13、设计一个算法,找出二叉树上任意两个结点的最近共同父结点。 复杂度如果是O(n2)则不得分。 14、一棵排序二叉树,令f=(最大值+最小值)/2, 设计一个算法,找出距离f值最近、大于f值的结点。 复杂度如果是O(n2)则不得分。 15、一个整数数列,元素取值可能是1~N(N是一个较大的正整数)中的任意一个数,相同数值不会重复出现。 设计一个算法,找出数列中符合条件的数对的个数,满足数对中两数的和等于N+1。 复杂度最好是O(n),如果是O(n2)则不得分。 谷歌八道面试题 16、正整数序列Q中的每个元素都至少能被正整数a和b中的一个整除,现给定a和b,需要计算出Q中的前几项,例如,当a=3,b=5,N=6时,序列为3,5,6,9,10,12 (1)、设计一个函数void generate(int a,int b,int N ,int * Q)计算Q的前几项 (2)、设计测试数据来验证函数程序在各种输入下的正确性。 17、有一个由大小写组成的字符串,现在需要对他进行修改,将其中的所有小写字母排在答谢字母的前面(大写或小写字母之间不要求保持原来次序),如有可能尽量选择时间和空间效率高的算法c语言函数原型void proc(char *str)也可以采用你自己熟悉的语言 18、如何随机选取1000个关键字 给定一个数据流,其中包含无穷尽的搜索关键字(比如,人们在谷歌搜索时不断输入的关键字)。如何才能从这个 国有企业经典笔试题目 笔试是以文字为媒介,考察一个人的知识水平素质能力。下面整理的国有企业经典笔试题目,欢迎大家参考。 1、如果你的工作出现失误,给本单位造成经济损失,你认为该怎么办? [思路点拨] 我认为首要的问题是想方设法去弥补或挽回经济损失,其次才是责任问题。我想首先的问题是分清责任,各负其责;如果是我的责任,我甘愿受罚。 2、在此之前你去过什么单位求职,结果如何? [思路点拨] 这是面试比较深入以后涉及的问题,用以了解求职者在人才市场中的经历。我去过一些单位求职,都没成功,原因是双向的。 3、你所学的专业和我们招聘的广告策划人员并不对口,你是不是不太适合这项工作呢? [思路点拨] 是这样。但是我所在的学校近几年不断深化改革,因为??为了完善大学生的知识结构,开设了许多选修课,例如.对项工作有很深厚的兴趣,而且注意在实践中不断提高自己,这是我画的水粉画、油画,还有我发表的一些豆腐块文章。 4、你受过挫折吗?若有,请告知具体是什么事,又是如何渡过难关的? [思路点拨] 有。考试大提供我在大学三年级参加四级英语考试时,只考了47分,我很羞愧、伤心。后来我认真总结英语考试失败的教训,奋发努力,在大四时,我终于考了74分;又如,在大一暑假回家的路上,我的钱包丢了,在中途转车时,我打了3天工,凑齐了路费才回家。 5、你的司长让你将一份急件送给中宣部,第二天却发现送错了单位,他不仅不承担责任,还生气地批评你马虎大意,没按要求将材料送给文化部。这时,你要怎样表白自己,而又不影响工作,不加剧你与领导的矛盾? [思路点拨] 该题用于考察考生的应变能力和情绪稳定性,考生应该尽快找出压力情况下合乎情理地解决问题的办法,做法灵活周到。该题也能考察考生处理与上级关系的能力与技巧。情绪稳定,思维敏捷,考虑问题周到。如:当时不做解释,只抓紧时间补救,以后选择较轻松场合,再做适当解释。 6、假设你手头上有好几项工作没有完成,可是上级又给你安排了一项任务。你感到自己完成这项工作有困难。你如何处理这? 个矛盾 [思路点拨] 该题用于考察考生的人际交往的意识与技巧,主要是在组织中处理权属关系的能力。能够很好地与人沟通,有很好的交往方法和技巧;能够在尊重他人的前提下恰当地表达自己的意见。如:能用适当方法让领导了解到自己现有任务已很重,并能向领导提出完成该任务的可行建议。 7、这次报考,你的笔试成绩一般,面试情况也不突出,你觉得我们会录用你吗? [思路点拨] 该题有意地给考生施加压力,考察考生的应变能力和自哉情绪控制及自信心。考试大提供情绪稳定,思维敏捷、自信,对自己有正确的评价,并设法得体地突出自己的优势,变被 一、CSS (1) 二、HTML (3) 三、jquery (3) 四、综合 (4) 一、C SS 1.CSS样式表根据所在网页的位置,可分为?(B ) A.行内样式表、内嵌样式表、混合样式表 B.行内样式表、内嵌样式表、外部样式表 C.外部样式表、内嵌样式表、导入样式表 D.外部样式表、混合样式表、导入样式表 2.对于标签,其中*代表(C ) A. 注释的时候才用上 B. 没有这个标签 C. 通配符,意思是所有的标签 3.在CSS中下面哪种方法表示超链接文字在鼠标经过时,超链接文字无下划线?(B ) A. A:link{TEXT-DECORATION: underline } B. A:hover {TEXT-DECORATION: none} C. A:active {TEXT-DECORATION: blink } D. A:visited {TEXT-DECORATION: overline } 4.下面代码片段,说法正确的是:(B ) .DIV1 { position:absolute; line-height:22px; height:58px; background-color: #FF0000; } A. Line-height:22px;修饰文本字体大小 B. position:absolute;表示绝对定位,被定位的元素位置固定 C. height:58px; 表示被修饰的元素距离别的元素的距离 D. background-color: #FF0000; 表示被修饰的元素的背景图像 5.用CSS设置DIV的左边为红色实线,下面设置正确的是(C ) A.style=”border-top: #ff0000 1 solid;”前端基础面试题汇总
行内:a、br、i、img、input、strong 区别:块级元素的W、H、margin和padding都可以控制 行内元素的W、H,以及margin和padding的top和bottom不能控制 2.介绍所知道的CSS hack技巧 由于不同的浏览器对CSS的支持和解析结果不同,所以可以使用CSS hack来对不同的浏览器写不同的CSS样式,常见的有(_,*,!important) 3.CSS定位方式有哪些?position的属性值之间的区别是什么 static(静态) 没有特别的设定,遵循基本的定位规定,不能通过z-index进行层次分级。 relative(相对定位) 对象不可层叠、不脱离文档流,参考自身静态位置通过top,bottom,left,right 定位,并且可以通过z-index进行层次分级。 absolute(绝对定位) 脱离文档流,通过top,bottom,left,right定位。选取其最近一个最有定位设置的父级对象进行绝对定位,如果对象的父级没有设置定位属性,absolute元素将以body坐标原点进行定位,可以通过z-index进行层次分级。 fixed(固定定位)这里所固定的参照对像是可视窗口而并非是body或是父级元素。可通过z-index 进行层次分级。 4.类的定义方法(prototype)(继承) var Obj3 = new Function(); Obj3.prototype = { v1 : "", get_v1 : function() { return this.v1; }, set_v1 : function(v) { this.v1 = v; } }; 5.DOM 操作 1.向当前对象追加节点 var para=document.createElement("p"); var node=document.createTextNode("这是新段落。"); para.appendChild(node); 2.移除当前节点的子节点,并返回节点 var childnode=document.getElementById("child"); var removednode=document.getElementById("father").removeChild(childnode) 3.复制并返回当前节点(复制节点本身,不复制子节点) varul = document.getElementByIdx_xx_x("myList"); //获得ul vardeepList = ul.cloneNode(true); //深复制 varshallowList = ul.cloneNode(false); //浅复制
笔试题-经典LINUX程序员面试题
web前端开发面试题汇总模板
最新web前端面试题(及答案)
各大公司面试题目
国有企业经典笔试题目
Web前端开发工程师面试题