阿里在线前端笔试题

开发 前端
参加了2015年暑假实习校园招聘,好吧,其实就看看题目长什么样字、废话不多说,上题。

本人大三,非985,211。

参加了2015年暑假实习校园招聘,好吧,其实就看看题目长什么样字、废话不多说,上题。

[[131314]]

一共13题,6个选择,1题是github地址或博客微博地址,6个大题。

选择题***题:

  1. var arr = [1,2,3,4,5]; 
  2. arr.splice(1,2,3,4,5); 
  3. arr? 

考察数组splice的用法。

后面几个选择题忘了(别打脸),选择题都不是很难。

大题:

1.考查css的基本知识,给出html基本代码。写css代码, 每个div是一个盒子模型。中间文字水平垂直居中,三个盒子水平排列。(比较基础,代码就不上了)

2.多维数组转一位数组:原题:[1,[2,3]] ==》 [1,2,3]

  1. var arr = [1,[[4,5,6],2,[[[7,8,9]]],3]]; //转成一位数组:[1, 4, 5, 6, 2, 7, 8, 9, 3] 
  2. function f(arr){ 
  3.     if(Object.prototype.toString.call(arr) != '[object Array]')  //判断arr是不是数组 
  4.         return
  5.     var newArr = []; 
  6.     function fn(arr){  
  7.         for (var i = 0; i < arr.length; i++) {//遍历数组 
  8.             if(arr[i].length){//判断是不是多维数组 
  9.                 fn(arr[i]);    //递归调用 
  10.             }else
  11.                 newArr.push(arr[i]); 
  12.             } 
  13.         } 
  14.     } 
  15.     fn(arr); 
  16.     return newArr; 
  17. console.log(f(arr)); 
当时在做试卷的时候 没有考虑多维数组,只片面的为了解题,没有用递归。

3.数字类型转千分位表示

  1. var num = 123456789.9//结果转成千分位表示 123,456,789.9 
  2. function f(num){ 
  3.     if(typeof num != 'number'
  4.         return
  5.     num += ''
  6.     if(num.indexOf('.')!=-1){ //判断是否存在小数 
  7.         return fn(num.split('.')[0])+'.'+num.split('.')[1]; 
  8.     }else
  9.         return fn(num); 
  10.     } 
  11.     function fn(newNum){ 
  12.         var str = ''
  13.         var l = newNum.length; 
  14.         while(l>3){ 
  15.             str = ','+newNum.substring(l-3,l) + str; 
  16.             l = l-3
  17.         } 
  18.         str = newNum.substring(0,l) + str; 
  19.         return str; 
  20.     } 
  21. console.log(f(num)); 

4.解析url:var str = 'http://s.weibo.com/weibo/Aralic?topnav=1&wvr=6'获得参数名和参数值:

(以前做过类似的题目,解析url一系列的值,阿里这题感觉稍微简单一点)

  1. function f(url){ 
  2.     var l = url.indexOf('?'); 
  3.     if(l!=-1){ 
  4.         var obj = {}; 
  5.         var arr = url.substring(l+1,url.length).split('&'); 
  6.         for(var i = 0; i<arr.length; i++){ 
  7.             obj[arr[i].split('=')[0]] = arr[i].split('=')[1]; 
  8.         } 
  9.         return obj; 
  10.     } 
  11. console.log(f('http://s.weibo.com/weibo/Aralic?topnav=1&wvr=6')) 

有幸看到的园子大牛帮忙给点意见,不是专门学计算机的,算法比较差。

责任编辑:王雪燕 来源: 寻医问药网
相关推荐

2009-02-27 10:46:32

DBA笔试题阿里巴巴

2009-06-15 17:18:25

Java笔试题

2010-08-11 11:57:02

微软笔试题微软笔试题

2010-08-11 12:07:08

腾讯笔试题腾讯笔试题

2010-08-11 11:32:57

谷歌笔试题谷歌笔试题

2010-08-11 11:22:00

IBM笔试题IBM笔试

2009-07-28 13:35:18

2010-08-18 10:17:00

2010-08-16 15:27:22

雅虎笔试题

2020-06-01 08:39:12

JavaScript开发技术

2012-06-28 14:35:49

Web

2009-07-14 10:05:02

HCDA认证考试笔试题

2011-08-11 17:39:25

Objective-C笔试题

2010-08-18 10:27:56

2010-08-31 23:15:42

2021-04-28 08:03:15

HIVESQLlead

2020-07-14 16:08:33

数据分析Python笔试

2009-08-01 22:47:13

ASP.NET笔试题目ASP.NET

2009-07-28 13:09:51

ASP.NET笔试题

2015-06-09 14:43:36

javascript操作字符串
点赞
收藏

51CTO技术栈公众号