BAT及各大互联网公司2021前端笔试面试题.docxVIP

BAT及各大互联网公司2021前端笔试面试题.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
BAT及各大互联网公司2021前端笔试面试题 #2.javascript的数据类型都有什么?基本数据类型:string,boolean,number,undefined,null引用数据类型:object(array,date,regexp,function)那么问题来了,如何判断某变量是否为数组数据类型?方法一.判断其是否具有“数组性质”,如slice()方法。可自己给该变量定义slice方法,故有时会失效方法二.objinstanceofarray在某些ie版本中不正确方法三.方法一二皆有漏洞,在ecmascript5中定义了新方法array.isarray(),保证其兼容性,最好的方法如下:if(typeofarray.isarray===undefined){array.isarray=function(arg){returnobject.prototype.tostring.call(arg)===[objectarray]};}3.已知id的input输入框,希望获取这个输入框的输入值,怎么做?(不使用第三方框架)document.getelementbyid(“id”).value4.希望获取到页面中所有的checkbox怎么做?(不使用第三方框架)vardomlist=document.getelementsbytagname(‘input’)varcheckboxlist=[];varlen=domlist.length;  //缓存到局部变量while(len--){  //使用while的效率会比for循环更高  if(domlist[len].type==‘checkbox’){  checkboxlist.push(domlist[len]);  }}5.设置一个已知id的div的html内容为xxxx,字体颜色设置为黑色(不使用第三方框架)vardom=document.getelementbyid(“id”);dom.innerhtml=“xxxx”dom.style.color=“#000”6.当一个dom节点被点击时候,我们希望能够执行一个函数,应该怎么做?直接在dom里绑定事件: 在JS:XXX onclick=test中通过onclick绑定是通过添加事件:addeventlistener(XXX,click,test)绑定的。所以问题是,JavaScript的事件流模型是什么?“事件冒泡”:事件首先被最特定的元素接受,然后逐级向上传播。“事件捕获”:事件首先由最不特定的节点接收,然后逐级向下直到最特定的“DOM事件流”:三个阶段:事件捕获、目标阶段和事件冒泡7 Ajax和JSON是什么,它们的优缺点是什么。AJAX是异步JavaScript和XML,用于实现web页面中的异步数据交互。优点:可以使页面在不重新加载所有内容的情况下加载本地内容,减少数据传输量,避免用户不断刷新或跳转到页面,改善用户体验的缺点:对搜索引擎不友好(在Ajax下实现来回功能,成本大,可能会增加请求数量,跨域问题和限制。JSON是一种轻量级的数据交换格式。ECMA的子集具有轻量级的优点,便于人们读写,易于机器(JavaScript)解析,支持复合数据类型(数组、对象、字符串、数字)8以下代码的输出是什么?解释原因。瓦拉;警报(A型);//未定义(b);//错误报告说明:undefined是只有一个值的 {$id} {$name} $id}替换成10,{$name}替换成tony(使用正则表达式)答案:” {$id} {$id}_{$name} ”. 替换(/{\$id}/g,10)。替换(/{\$name}/g,tony);16.为了保证页面输出的安全性,我们经常需要对一些特殊字符进行转义。请编写一个函数escapehtml,它将,,“escape函数escapehtml(STR){returnstr.replace(/[“]/g,函数(match){switch(match){case”“:Return”“:Return“,”case“”:Return“”;case“\”:Return”“;}}17.Foo=Foo | bar,这行代码是什么意思?你为什么写这个?答:如果(!Foo)Foo=bar//如果Foo存在,则值保持不变,否则将bar的值指定给Foo。短路表达式:作为“”和“|”运算符的操作数表达式,在计算这些表达式时,只要可以确定最终结果为真或假,计算过程就会终止。这称为短路评估。18.看下面的代码,将输出什么?(变量声明提升)varfoo=1;函数(){console.log(foo);varfoo=2;console.log(foo);

文档评论(0)

软件开发 + 关注
官方认证
服务提供商

十余年的软件行业耕耘,可承接各类需求

认证主体深圳鼎云文化有限公司
IP属地湖南
统一社会信用代码/组织机构代码
91440300MA5G24KH9F

1亿VIP精品文档

相关文档