1、前端需要注意哪些SEO?

合理的title、description、keywords:

搜索对着三项的权重逐个减小,

title值强调重点即可,

重要关键词出现不要超过2次,

而且要靠前,

不同页面title要有所不同;
description把页面内容高度概括,

长度合适,

不可过分堆砌关键词,

不同页面description有所不同;
keywords列举出重要关键词即可

语义化的HTML代码,符合W3C规范:

语义化代码让搜索引擎容易理解网页
重要内容HTML代码放在最前:

搜索引擎抓取HTML顺序是从上到下,

有的搜索引擎对抓取长度有限制,

保证重要内容一定会被抓取

重要内容不要用js输出:

爬虫不会执行js获取内容

少用iframe:

搜索引擎不会抓取iframe中的内容
非装饰性图片必须加alt

提高网站速度:

网站速度是搜索引擎排序的一个重要指标

2、<img>的title和alt有什么区别?

通常当鼠标滑动到元素上的时候显示
alt是<img>的特有属性,

是图片内容的等价描述,

用于图片无法加载时显示、

读屏器阅读图片。

可提图片高可访问性,

除了纯装饰图片外都必须设置有意义的值,

搜索引擎会重点分析。

3、HTTP的几种请求方法用途?

1、GET方法
发送一个请求来取得服务器上的某一资源
2、POST方法
向URL指定的资源提交数据或附加新的数据
3、PUT方法
跟POST方法很像,

也是想服务器提交数据。

但是,它们之间有不同。

PUT指定了资源在服务器上的位置,

而POST没有
4、HEAD方法
只请求页面的首部
5、DELETE方法
删除服务器上的某资源
6、OPTIONS方法
它用于获取当前URL所支持的方法。

如果请求成功,

会有一个Allow的头

包含类似“GET,POST”这样的信息
7、TRACE方法
TRACE方法被用于激发一个远程的,

应用层的请求消息回路
8、CONNECT方法
把请求连接转换到透明的TCP/IP通道

4、从浏览器地址栏输入url到显示页面的步骤?

浏览器根据请求的URL交给DNS域名解析,

找到真实IP,

向服务器发起请求;
服务器交给后台处理完成后返回数据,

浏览器接收文件(HTML、JS、CSS、图象等);
浏览器对加载到的资源(HTML、JS、CSS等)进行语法解析,

建立相应的内部数据结构(如HTML的DOM);
载入解析到的资源文件,渲染页面,完成。

5、如何进行网站性能优化?

content方面
减少HTTP请求:合并文件、CSS精灵、inline Image
减少DNS查询:DNS缓存、

将资源分布到恰当数量的主机名
减少DOM元素数量
Server方面
使用CDN
配置ETag
对组件使用Gzip压缩
Cookie方面
减小cookie大小
css方面
将样式表放到页面顶部
不使用CSS表达式
使用<link>不使用@import
Javascript方面
将脚本放到页面底部
将javascript和css从外部引入
压缩javascript和css
删除不需要的脚本
减少DOM访问
图片方面
优化图片:根据实际颜色需要选择色深、压缩
优化css精灵
不要在HTML中拉伸图片

6、语义化的理解?

用正确的标签做正确的事情!
html语义化就是让页面的内容结构化,

便于对浏览器、搜索引擎解析;
在没有样式CSS情况下也以一种文档格式显示,

并且是容易阅读的。
搜索引擎的爬虫依赖于标记来

确定上下文和各个关键字的权重,

利于 SEO。
使阅读源代码的人对网站更容易将网站分块,

便于阅读维护理解

7、WEB标准以及W3C标准是什么?

标签闭合、标签小写、不乱嵌套、

使用外链css和js、结构行为表现的分离

8、说说你对作用域链的理解?

作用域链的作用是保证执行环境里

有权访问的变量和函数是有序的,

作用域链的变量只能向上访问,

变量访问到window对象即被终止,

作用域链向下访问变量是不被允许的
简单的说,

作用域就是变量与函数的可访问范围,

即作用域控制着变量与函数的可见性和生命周期

9、谈谈This对象的理解?

this总是指向函数的直接调用者(而非间接调用者)
如果有new关键字,

this指向new出来的那个对象
在事件中,

this指向触发这个事件的对象,

特殊的是,

IE中的attachEvent中的this总是指向全局对象Window

10、XML和JSON的区别?

数据体积方面

JSON相对于XML来讲,数据的体积小,传递的速度更快些。

数据交互方面

JSON与JavaScript的交互更加方便,更容易解析处理,更好的数据交互

数据描述方面

JSON对数据的描述性比XML较差

传输速度方面

JSON的速度要远远快于XML

Web大前端面试题-Day12的更多相关文章

  1. Web大前端面试题-Day7

    1. 你能描述一下渐进增强和优雅降级之间的不同吗? 定义: 优雅降级(graceful degradation): 一开始就构建站点的完整功能, 然后针对浏览器测试和修复 渐进增强(progressi ...

  2. Web大前端面试题-Day6

    1.请说明ECMAScript, JavaScript, Jscript之间的关系? ECMAScript提供脚本语言必须遵守的规则. 细节和准则,是脚本语言的规范. 比如:ES5,ES6就是具体的一 ...

  3. Web大前端面试题-Day4

    1. 如何实现瀑布流? 瀑布流布局的原理:1) 瀑布流布局要求要进行布置的元素等宽,   然后计算元素的宽度,   与浏览器宽度之比,得到需要布置的列数;2) 创建一个数组,长度为列数,   里面的值 ...

  4. Web大前端面试题-Day11

    86.如何获得高效的数据库逻辑结构? 从关系数据库的表中 删除冗余信息的过程 称为数据规范化, 是得到高效的关系型数据库表的逻辑结构 最好和最容易的方法. 规范化数据时应执行以下操作: 1.将数据库的 ...

  5. Web大前端面试题-Day10

    1. px和em的区别? px和em都是长度单位; 区别是: px的值是固定的,指定是多少就是多少, 计算比较容易. em得值不是固定的,并且em会继承父级元素的字体大小. 浏览器的默认字体高都是16 ...

  6. Web大前端面试题-Day8

    1. 说说你对作用域链的理解? 作用域链的作用是保证执行环境里 有权访问的变量和函数是有序的, 作用域链的变量只能向上访问, 变量访问到window对象即被终止, 作用域链向下访问变量是不被允许的; ...

  7. Web大前端面试题-Day1

    1. var的变量提升的底层原理是什么? JS引擎的工作方式是:1) 先解析代码,获取所有被声明的变量:2)然后在运行.也就是说分为预处理和执行两个阶段. 变量提升:所有变量的声明语句都会被提升到代码 ...

  8. Web大前端面试题-Day9

    1. 请用至少3中方式实现数组去重? 方法一: indexOfvar arr1=[1,2,3,4,5,4,3,2,1];  function repeat1(arr){    for(var i=0, ...

  9. Web大前端面试题-Day5

    1.写一个深度克隆方法(es5)? /** *  深拷贝 * @param {object}fromObj 拷贝的对象 * @param {object}toObj  目标对象 */ function ...

随机推荐

  1. np.mat()和np.transpose

    例子: import numpy as np dataSet = [] with open('/home/lai/下载/20081023025304.plt') as fr: for line in ...

  2. Docker帮助命令

    ①docker version ②docker info ③docker --help

  3. NSIS程序安装包制作

    nsis下载地址:http://www.pc6.com/softview/SoftView_14342.html nsis使用: 启动NSIS程序主界面,选择"可视化脚本编辑器(VNISEd ...

  4. robotium之无name、ID仅有desc定位

    场景如图: 没有name和ID,群里问了,也没人搭理我,自己试验了下,发现这个法子可用,直接贴代码: Activity act = solo.getCurrentActivity(); int ide ...

  5. python读取两个csv文件数据,进行查找匹配出现次数

    现有需求 表1 表2 需要拿表1中的编码去表2中的门票编码列匹配,统计出现的次数,由于表2编码列是区域间,而且列不是固定的,代码如下 #encoding:utf-8 ##导入两个CSV进行比对 imp ...

  6. Java基础97 json插件的使用(java对象和json字符串对象之间的转换)

    1.需要用到的包 2.实例 实体类 people package com.shore.entity; /** * @author DSHORE/2019-4-19 * */ public class ...

  7. 前端工程化-webpack(babel编译ES6)

    最新版安装与普通安装 使用babel-loader编译ES6,需要遵循规范,安装babel-presets 规范列表 对应babel-loader,babel-preset安装最新版和普通版: pre ...

  8. Ubuntu 下安装LEMP环境 实战

    ---恢复内容开始--- 1.nginx的服务端的安装 打开命令行终端,在终端输入,sudo apt-get install nginx  回车即开始安装 kxlc-t@ubuntu:~$ sudo ...

  9. TOP排行新闻列表。

    效果图: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...

  10. IDA Pro的patch插件 KeyPatch

    本来这个是没什么可写的,但是安这个插件的时候真是气到爆炸,安装文档写的不明不白,几万行的代码都写了就差那么点时间写个几十字的详细说明吗? 1.下载keypatch.py放到\IDA\plugins里 ...