阿里外包笔试题目集:数组去重排序、CSS布局与URL解析

需积分: 5 0 下载量 48 浏览量 更新于2024-08-04 收藏 2KB MD 举报
阿里外包笔试涵盖了一系列实用的IT技术题目,旨在测试应聘者的编程基础、CSS布局能力、JavaScript编程技巧以及正则表达式处理。以下是对这些题目知识点的详细解析: 1. 数组去重与排序: 题目要求应聘者对给定的数组`['2', 'b', '9', 'a', '7', '3', '4', 'b', '6', '4']`进行操作,首先要去除重复元素,然后按照升序排列。这涉及到数据结构(尤其是集合或哈希)的理解和数组操作,如使用Set数据结构来去重,然后转换回数组并使用sort()函数进行升序排序。简洁的JavaScript代码可能如下所示: ```js function handle(arr) { const uniqueArr = [...new Set(arr)]; return uniqueArr.sort((a, b) => a.localeCompare(b)); } ``` 2. CSS布局: 考察的是CSS布局技巧,题目要求实现水平垂直居中,提供两种不同类名的div元素。有多种方法可以实现这个目标,包括Flexbox和Grid布局,或者利用绝对定位配合父元素的百分比布局。示例代码可能会展示这两种方法: - Flexbox: ```css .demo1 { display: flex; justify-content: center; align-items: center; } ``` - Grid布局: ```css .demo2 { display: grid; place-items: center; } ``` 3. URL参数提取: 这道题目要求应聘者编写一个JavaScript函数,用于从URL中提取查询参数(即queryParam部分,不包括#后面的hash部分)。这涉及URL解析和对象字面量的知识,函数可能这样实现: ```js function getParamFromURL(url, key) { const urlParams = new URLSearchParams(url.split('#')[0]); return urlParams.get(key); } ``` 如果要提取特定键的值,只需传入对应的键即可。 4. 正则表达式匹配链接: 最后一个问题考察的是正则表达式的应用,特别是在字符串处理中的URL识别。题目指定要匹配`tmall.com`和`taobao.com`域名下的链接。一个满足要求的正则表达式可能是: ```regex /https?:\/\/(?:www\.)?(taobao|tmall)\.com\/(.*?)/i ``` 用例1中的URL将被匹配为 `https://detail.tmall.com/item.htm?id=577359445691`,因为只有`tmall.com`域名且符合正则表达式的格式。 这些题目展示了阿里外包笔试对应聘者的基本技能要求,包括编程语言的熟练度、CSS布局理解和JavaScript高级功能运用,以及正则表达式的实际应用。