web前端面试题汇总(一)

话不多说,直接上干货

#####1. 浏览器页面有哪三层组成,作用?

哪一层名称作用
结构层HTML实现页面结构
表示层CSS完成页面的表现和风格
行为层JavaScript实现客户端功能与业务

#####2. HTML5的优缺点

优点:

  • 网络标准统一
  • 多设备,跨平台
  • 视频和音频特性给站点带来更多的多媒体元素
  • 在网站的爬取和索引的时候,对SEO很友好
  • 被大量运用到移动端和游戏

缺点:

  • 安全性差。web storage.web socket这些功能很容易被黑客利用,来盗取用户的信息和资料。
  • 完善性差。许多特性在各浏览器的支持程度不一样。
  • 浏览器兼容性:IE9以下几乎都不兼容。
  • 性能。某些平台上的引擎问题导致HTML5性能地下。

#####3. HTML5有哪些新特性,移除了哪些元素

ps:由于东西太多,所以做简要性回答

HTML5主要新增四类元素:
结构性元素:section,header
级块性元素:dialog,code
行内语义性元素:time,progress
交互性元素:menu,details

HTML5主要废除三种元素
能用CSS代替的元素:big,font
frame框架:frameset,frame,noframes
部分浏览器支持的元素:blink,dir

#####4. 各浏览器的内核

| 浏览器 | 内核名称 | 前缀 |
| ------------- |:-------------|: -----😐
| IE | trident内核 | -ms |
| Firefox | gecko内核 | -moz |
| Chrome/Safari | webkit内核 | -webkit |
| Opera | blink内核 | -o |

#####5. 每个HTML文件开头都有个东西,Doctype,作用?

这个声明位于文档中的最前面的位置。作用是告诉浏览器按照何种规范来解析页面。
Doctype不存在或者格式不正确会导致文档以混杂模式呈现.

#####6. 对web标准以及w3c的理解和认识

  • 标签闭合,小写,不乱嵌套。提高搜索机器人几率,使用外链css和js脚本,结构行为表现的分离。
  • 文件下载与页面速度更快,内容能被更多的用户所访问,被更广泛的设备所访问,更少的代码和组建。
  • 容易维护,改版方便,提高网站的易用性。

#####7. 说说你对HTML5语义化的理解

1)什么是语义化
根据内容的结构化选择合适的标签,便于开发者阅读和编写代码的同时,让浏览器的爬虫和机器很好的解析。
2)为什么要语义化

  • 用户体验好。在没有css时,页面也能很好的呈现出内容结构
  • 有利于SEO
  • 方便其他设备解析
  • 便于团队开发和维护。语义化具有可读性,减少团队的差异性。

#####8. css中link和@import的区别是

link@import
HTML标签css标签
页面被加载,link同时被加载页面最加载完在加载
无兼容问题在IE5以上被识别
权重高权重低

#####9. 盒模型

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9HXAmJ9A-1679933145962)(http://images.cnblogs.com/cnblogs_com/cchyao/%E6%A0%87%E5%87%86W3C%E7%9B%92%E5%AD%90%E6%A8%A1%E5%9E%8B%E5%92%8CIE%E7%9B%92%E5%AD%90%E6%A8%A1%E5%9E%8BCSS%E5%B8%83%E5%B1%80%E7%BB%8F%E5%85%B8%E7%9B%92%E5%AD%90%E6%A8%A1%E5%9E%8B/1.JPG)]

w3c 盒子模型的范围包括 margin、border、padding、content,并且 content 部分不包含其他部分。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lkxNN1gm-1679933145963)(http://images.cnblogs.com/cnblogs_com/cchyao/%E6%A0%87%E5%87%86W3C%E7%9B%92%E5%AD%90%E6%A8%A1%E5%9E%8B%E5%92%8CIE%E7%9B%92%E5%AD%90%E6%A8%A1%E5%9E%8BCSS%E5%B8%83%E5%B1%80%E7%BB%8F%E5%85%B8%E7%9B%92%E5%AD%90%E6%A8%A1%E5%9E%8B/2.JPG)]

ie 盒子模型的范围也包括 margin、border、padding、content,和标准 w3c 盒子模型不同的是:ie 盒子模型的 content 部分包含了 border 和 pading。

#####10. DOM常见操作

  • getElementById(id) 通过id来访问某一元素
  • getElementsByName(name) 通过name来取得某一堆元素(作为数组)(仅用于取得input、radio、 checkbox等元素)
  • getElementsByTagName(tagname) 通过TagName也就是标签名来取得
  • appendChild(node) 向当前的元素(应该叫对象比较恰当)追加节点。
  • removeChild(childreference) 删除当前节点的子节点,返回被删除的节点。
  • replaceChild(newChild, oldChild) 把当前节点的一个子节点换成另一个节点
  • insertBefore(selector) 方法在被选元素前插入 HTML 元素

#####11. null和undefined的区别

null表示"没有对象",即该处不应该有值。典型用法是:

(1) 作为函数的参数,表示该函数的参数不是对象。
(2) 作为对象原型链的终点。
(3) 转为数字时为0

undefined表示"缺少值",就是此处应该有一个值,但是还没有定义。典型用法是:

(1)变量被声明了,但没有赋值时,就等于undefined。
(2) 调用函数时,应该提供的参数没有提供,该参数等于undefined。
(3)对象没有赋值的属性,该属性的值为undefined。
(4)函数没有返回值时,默认返回undefined。
(5)转为数值时为NaN

#####12. json是什么

JSON: JavaScript Object Notation(JavaScript 对象表示法)。JSON是一种轻量级的数据交换格式,基于JavaScript的一个子集,数据格式简单,易于读写,占用带宽小。

#####13. 优雅降级和渐进增强

优雅降级:Web站点在所有新式浏览器中都能正常工作,若使用老式浏览器,则代码会检查以确认他们是否能正常工作。
渐进增强:从被所有浏览器支持的基本功能开始,逐步地增加那些只有新式浏览器才支持的功能。

#####14. http状态码

  • 200: 请求成功
  • 304:自从上次被请求过,请求的页面未修改过
  • 403:(Forbidden)服务器已经理解请求,但禁止访问
  • 404:(not found)请求失败
  • 408:(请求超时) 服务器等候请求时发生超时
  • 500: (Internal Server Error)服务器无法处理请求

#####15. ajax的过程(Asynchronous JavaScript + XML)

    (1)创建`XMLHttpRequest`对象,也就是创建一个异步调用对象.

    (2)创建一个新的`HTTP`请求,并指定该`HTTP`请求的方法、`URL`及验证信息.

    (3)设置响应`HTTP`请求状态变化的函数.

    (4)发送`HTTP`请求.

    (5)获取异步调用返回的数据.

    (6)使用JavaScript和DOM实现局部刷新.


    var xmlHttp = new XMLHttpRequest();

    xmlHttp.open('GET','demo.php','true');

    xmlHttp.send()

    xmlHttp.onreadystatechange = function(){

        if(xmlHttp.readyState === 4 & xmlHttp.status === 200){

        }

    }

#####16. get和post的区别

这里写图片描述

#####17. 常见的页面布局

  • 双飞翼布局(三列,中间宽自适应,两边定宽)
  • 多栏布局(利用浮动实现)
  • 瀑布流布局(类似蘑菇街)
  • 响应式布局(一个网站可以兼容多个终端)

#####18. 常见的定位
在这里插入图片描述

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值