您现在的位置:首页 >> 前端 >> 内容

分享几道前端面试题

时间:2018/6/29 12:00:56 点击:

  核心提示:一.谈谈对优化性能优化的认识?怎么优先加载?1、减少http请求,合理设置 HTTP缓存2、使用浏览器缓存3、启用压缩4、CSS Sprites合并 CSS图片,减少请求数的又一个好办法。5、Lazy...

一.谈谈对优化性能优化的认识?怎么优先加载?

1、减少http请求,合理设置 HTTP缓存

2、使用浏览器缓存

3、启用压缩

4、CSS Sprites

合并 CSS图片,减少请求数的又一个好办法。

5、LazyLoad Images

6、CSS放在页面最上部,javascript放在页面最下面

7、异步请求Callback(就是将一些行为样式提取出来,慢慢的加载信息的内容)

8、减少cookie传输

9、Javascript代码优化 ( (1). DOM (2). 慎用 with  (3). 避免使用 eval和 Function (4). 减少作用域链查找 (5). 数据访问 (6). 字符串拼接)

10、CSS选择符优化

CDN加速 反向代理

二、说说PHP和JS的(或者相比其他语言)区别优势和特点

PHP:

特性:

(1). PHP 独特的语法混合了 C、Java、Perl 以及 PHP 自创新的语法。

(2). PHP可以比CGI或者Perl更快速的执行动态网页——动态页面方面,与其他的编程语言相比,

PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成htmL标记的CGI要高许多;

PHP具有非常强大的功能,所有的CGI的功能PHP都能实现。

(3). PHP支持几乎所有流行的数据库以及操作系统

(4). 最重要的是PHP可以用C、C++进行程序的扩展!

优点:

(1)、运行在web服务器端:学会了PHP,WEB网站的大部分数据都是存储在服务器端的,PHP就是用来处理这些存储在服务器的数据。

(2)、跨平台:服务器可以是多种平台的服务器,比如Linux、Windows、Unix

(3)、脚本语言:它是通过编写脚本,也就是一行行的计算机指令来指挥服务器来工作的

(4)、免费:免费使用。

js:特性:

(1)是一种解释性脚本语言(代码不进行预编译)。

(2)主要用来向HTML(标准通用标记语言下的一个应用)页面添加交互行为。

(3)可以直接嵌入HTML页面,但写成单独的js文件有利于结构和行为的分离。

(4)跨平台特性,在绝大多数浏览器的支持下,可以在多种平台下运行(如Windows、Linux、Mac、Android、iOS等)。

(5)基于对象。javascript是一种基于对象的脚本语言,它不仅可以创建对象,也能使用现有的对象

(6)弱类型语言,对使用的数据类型未做出严格的要求

五、缓存和预加载的区别是什么

缓存就是把请求过的数据缓存起来,下次请求的时候直接使用缓存内容,提高响应速度

预加载指的是提前把需要的内容加载完成,访问的时候可以提高响应效率,比如图片的预加载(可以提前加载一定数量的图片,

当用户访问图片的时候一般只看前几张,由于是预加载好的,所以速度比较快)

七、javascript中未初始化的变量和未定义的变量的区别

简单理解 变量未定义,就是根本没有var(声明)这个变量.

而变量未初始化,其实也就是变量根本没赋值.

例如:

就是给变量赋值,然后对变量进行操作

var a=2; //变量初始化

var b=3;

作者:网络 来源:Hupan_Pan的