前端面试题(2018.6)

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

   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;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值