热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

玄武科技——前端面试题总结

简答题(每题5分):1、label标签是什么,for和accesskey属性有什么用?label标签是一种常见

简答题(每题5分):
1、label标签是什么,for和accesskey属性有什么用?


label标签是一种常见的表单控件。它的作用是使用户在填写表单的项目时有更好的体验。



label标签的关联方式主要有两种,显示关联和隐式关联


//显示关联 for属性的值与id值一样,表示关联



隐式关联:是直接将表单控件放到label标签内,这种情况下,label标签只能包含一个表单元素,包含多个只对第一个有效。




accesskey属性:
例如作用在 元素上:

自定义快捷访问

这里的属性值 ‘1’ 对应的就是键盘上的数字 1 ,虽然说 accesskey 属性值和键盘相对应,但并不是说直接按下这个键,就能快捷访问。浏览器是通过快捷键组合访问的形式进行页面元素的快速访问的。
ie和Google都是“ALT+key”启动
火狐浏览器要“Ctrl+alt+key”才能启动


2、 盒子模型
3、null和undefined的区别


undefined是一个表示"无"的原始值,转为数值时为NaN
变量被声明了,但没有赋值时,就等于undefined
调用函数时,应该提供的参数没有提供,该参数等于undefined
对象没有赋值的属性,该属性的值为undefined
函数没有返回值时,默认返回undefined



null是一个表示"无"的对象,
转为数值时为0 作为函数的参数,表示该函数的参数不是对象
作为对象原型链的终点


4、 闭包及使用的场景


闭包就是能够读取其他函数内部变量的函数。闭包可以简单理解成“定义在一个函数内部的函数“。


5、三个存储的区别
6、this如何工作

this指向的情况,取决于函数调用的方式有哪些:


通过函数名()直接调用的:this指向window 通过对象.函数名()调用的:this指向这个对象;
函数作为数组的一个元素,通过数组下标调用的:this指向这个数组
函数作为window内置函数的回调函数调用时:this指window.setTimeout(func,XXms);setInterval(func,XXms)等
函数作为构造函数,用new关键字调用时:this指向的是new出的新对象 通过函数指定,apply()\call()\bind()
方法指定this 箭头函数中的this问题,指向为定义时的this,而不是执行时的this


7、什么是跨域:跨域,指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器施加的安全限制。


## 跨域解决方案通过jsonp跨域document.domain + iframe跨域location.hash + iframewindow.name + iframe跨域postMessage跨域跨域资源共享(CORS)nginx代理跨域nodejs中间件代理跨域WebSocket协议跨域

8、 常见状态码及含义

成功2×× 成功处理了请求的状态码。
200 服务器已成功处理了请求并提供了请求的网页。
204 服务器成功处理了请求,但没有返回任何内容。
重定向3×× 每次请求中使用重定向不要超过 5 次。
301 请求的网页已永久移动到新位置。当URLs发生变化时,使用301代码。搜索引擎索引中保存新的URL。
302 请求的网页临时移动到新位置。搜索引擎索引中保存原来的URL。
304 如果网页自请求者上次请求后没有更新,则用304代码告诉搜索引擎机器人,可节省带宽和开销。
客户端错误4×× 表示请求可能出错,妨碍了服务器的处理。
400 服务器不理解请求的语法。
403 服务器拒绝请求。
404 服务器找不到请求的网页。服务器上不存在的网页经常会返回此代码。
410 请求的资源永久删除后,服务器返回此响应。该代码与 404(未找到)代码相似,但在资源以前存在而现在不存在的情况下,有时用来替代404 代码。如果资源已永久删除,应当使用 301 指定资源的新位置。
服务器错误5×× 表示服务器在处理请求时发生内部错误。这些错误可能是服务器本身的错误,而不是请求出错。
500 服务器遇到错误,无法完成请求。
503 服务器目前无法使用(由于超载或停机维护)。通常,这只是暂时状态。

9、reflow和repaint


repaint就是重绘,reflow就是回流
严重性:在性能优先的前提下,reflow的性能消耗要比repaint的大


10、 JSONP使用场景


1、在RPC远程调用时,或者提供给外部访问接口,一般数据交互格式通常为JSON
2、例如提供移动APP接口
3、前端ajax异步访问数据
4、项目合作时提供外部访问接口等。


11、如何优化网站

大题(每题10分)

-手写快速排序算法

function quickSort(arr){if(arr.length == 0){return [];}var left = [];var right = [];var selectItem = arr[0];for(var i = 1; i }

-说一下vuex,讲一下他的使用场景和解决痛点


Vuex是一个专为vue.js应用程序开发的状态管理模式。
当我们构建一个中大型的单页面应用程序时,Vuex可以更好的帮助我们在组件外部统一管理状态。


-一次完整的http的事务过程


1、域名解析

2、发起TCP的三次握手

3、建立TCP连接后发起http请求

4、服务器端响应http请求,浏览器得到html码

5、浏览器解析html代码,并请求html代码中的资源

6、浏览器对页面进行渲染并呈现给客户



推荐阅读
  • 本文详细介绍如何在VSCode中配置自定义代码片段,使其具备与IDEA相似的代码生成快捷键功能。通过具体的Java和HTML代码片段示例,展示配置步骤及效果。 ... [详细]
  • 优化局域网SSH连接延迟问题的解决方案
    本文介绍了解决局域网内SSH连接到服务器时出现长时间等待问题的方法。通过调整配置和优化网络设置,可以显著缩短SSH连接的时间。 ... [详细]
  • HBase运维工具全解析
    本文深入探讨了HBase常用的运维工具,详细介绍了每种工具的功能、使用场景及操作示例。对于HBase的开发人员和运维工程师来说,这些工具是日常管理和故障排查的重要手段。 ... [详细]
  • 本文介绍了多个关于JavaScript的书籍资源、实用工具和编程实例,涵盖从入门到进阶的各个阶段,帮助读者全面提升JavaScript编程能力。 ... [详细]
  • 本文将深入探讨如何在不依赖第三方库的情况下,使用 React 处理表单输入和验证。我们将介绍一种高效且灵活的方法,涵盖表单提交、输入验证及错误处理等关键功能。 ... [详细]
  • 探讨了如何解决Ajax请求响应时间过长的问题。本文分析了一个从服务器获取少量数据的Ajax请求,尽管服务器已经对JSON响应进行了缓存,但实际响应时间仍然不稳定。 ... [详细]
  • 本文详细介绍了Linux系统中init进程的作用及其启动过程,解释了运行级别的概念,并提供了调整服务启动顺序的具体步骤和实例。通过了解这些内容,用户可以更好地管理系统的启动流程和服务配置。 ... [详细]
  • 深入解析 Spring Security 用户认证机制
    本文将详细介绍 Spring Security 中用户登录认证的核心流程,重点分析 AbstractAuthenticationProcessingFilter 和 AuthenticationManager 的工作原理。通过理解这些组件的实现,读者可以更好地掌握 Spring Security 的认证机制。 ... [详细]
  • 本文详细探讨了C语言中指针的概念,特别是指针在变量和数组中的应用。通过实例讲解,帮助读者更好地掌握指针的使用方法。 ... [详细]
  • 本文探讨了在Java多线程环境下,如何确保具有相同key值的线程能够互斥执行并按顺序输出结果。通过优化代码结构和使用线程安全的数据结构,我们解决了线程同步问题,并实现了预期的并发行为。 ... [详细]
  • 谷粒商城统一返回对象R的泛型data获取异常及解决方案
    在实现过程中遇到空指针错误,经过定位发现远程调用后使用泛型的统一返回对象R无法正确获取data值。本文详细分析问题原因并提供解决方案。 ... [详细]
  • 本文详细介绍了Java中的输入输出(IO)流,包括其基本概念、分类及应用。IO流是用于在程序和外部资源之间传输数据的一套API。根据数据流动的方向,可以分为输入流(从外部流向程序)和输出流(从程序流向外部)。此外,还涵盖了字节流和字符流的区别及其具体实现。 ... [详细]
  • 作为一名 Ember.js 新手,了解如何在路由和模型中正确加载 JSON 数据是至关重要的。本文将探讨两者之间的差异,并提供实用的建议。 ... [详细]
  • 本文详细介绍了在企业级项目中如何优化 Webpack 配置,特别是在 React 移动端项目中的最佳实践。涵盖资源压缩、代码分割、构建范围缩小、缓存机制以及性能优化等多个方面。 ... [详细]
  • PHP 过滤器详解
    本文深入探讨了 PHP 中的过滤器机制,包括常见的 $_SERVER 变量、filter_has_var() 函数、filter_id() 函数、filter_input() 函数及其数组形式、filter_list() 函数以及 filter_var() 和其数组形式。同时,详细介绍了各种过滤器的用途和用法。 ... [详细]
author-avatar
phper_liufan
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有