博主本人前两天刚参加了百度前端校园招聘笔试,现把能记住的跟大家分享探讨下,还有一些是网上搜集来的其他地区的笔试

1、列举所知道的图片格式,说明其应用场景和优缺点

  当时只填出png,jpg,gif这几个格式,应用场景和优缺点只能随便写了几句话。

  网上搜集的资料如下:

  1. bmp(位图)格式:它是Windows操作系统中的标准图像文件格式,能够被多种Windows应用程序所支持。图像信息较丰富,几乎不进行压缩,但由此导致了它与生俱生来的缺点——占用磁盘空间过大。
  2. gif格式:可以同时存储若干幅静止图象进而形成连续的动画。目前Internet上大量采用的彩色动画文件多为这种格式的文件。缺点是不能存储超过256色的图像。
  3. jpeg格式:文件扩展名为.jpg或.jpeg,其压缩技术十分先进,可以用最少的磁盘空间得到较好的图像质量。应用非常广泛,特别是在网络和光盘读物上。
  4. png格式:一种新兴的网络图像格式,结合GIF及JPG两家之长,是目前保证最不失真的格式,它汲取了GIF和JPG二者的优点,存贮形式丰富。PNG的缺点是不支持动画应用效果。

以上资料摘自网上搜索结果

2、跨域通信问题解决方法

  作答时只写了利用document.domain

  详情请见我另一篇博客web跨域通信问题解决

3、父元素设置了一个透明度,让子元素不继承父元素透明度,有什么解决方法

  博主表示平常透明度用的就不多,更没有遇到子元素继承的情况,所以此题你懂的

  解决办法:a、利用绝对布局,不使用子元素,使其看似是子元素,但由于position:absolute,可能会出现很多问题

       b、IE中,子元素添加position:relative,非IE,使用background:rgba(120,120,120,0.7)来实现。

4、考察加号减号运算符

 1 console.log(2+'1')    //'21'
 2 
 3 console.log(2-'1')    //1
 4 
 5 console.log(1+ -'1'+'2')    //'02'
 6 
 7 console.log(+'1'+'1'+'2')    //'112'
 8 
 9 console.log(1+ +'2'+'2')    //'32'
10 
11 console.log('A'-'B'+2)    //NaN
12 
13 console.log('A'-'b'+'2')    //'NaN2'

5、手机端浏览器,当用户使用百度搜索某一结果时,返回N条记录,用户可向下滚动查看记录,而不是像电脑上的翻页效果

  我觉得是考的AJAX无刷新修改页面的问题,当用户搜索时,先返回搜索记录的前n调数据(不用太多),当滚动到底端时,利用ajax技术,取得后n条数据,然后将取得的数据append进页面中。

6、设计一个once函数,这个函数只执行一次,若再执行,直接返回上次的结果。 

  我认为是利用立即执行加闭包的方式,再利用hash-table判断是否已经执行

 1 /*只执行一次的函数*/
 2 var test1 =function(){
 3     alert('OK1'); //只会弹出一次
 4     console.log('OK1');
 5 }
 6 
 7 var test2 =function(){
 8     alert('OK2'); //只会弹出一次
 9     console.log('OK');
10 }
11 
12 var once = function(){
13     var obj = {},i = -1;
14     return function(fn){
15         if(arguments.length<1){
16             alert('请传入要执行的函数');
17             return;
18         }
19         for(var key in obj){
20             if(obj[key].func === fn){
21                 return obj[key].result;
22             }
23         }
24         var result = fn();
25         i++;
26         obj[i] = {func:fn,result:result};
27         return result;
28     }
29 }()
View Code

相关文章:

  • 2022-01-22
  • 2021-08-12
  • 2021-07-08
  • 2021-10-22
  • 2022-01-01
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-12-03
  • 2021-10-24
  • 2022-02-22
  • 2021-06-06
  • 2021-10-13
  • 2022-01-02
  • 2022-01-22
相关资源
相似解决方案