有一个数组,其中保存的都是小写英文字符串,现在要把它按照除了第一个字母外的字符的字典顺序(字典顺序就是按首字母从a-z顺序排列,如果首字母相同则按第二个字母……)排序,请编写代码:

例:
["abd","cba","ba",]
排序后
["ba","cba","abd"]

好吧,我在准备笔试,不说了,贴代码:

function arraySort(arr){
return arr.sort(function(a,b){
if(a.substring(1)>b.substring(1)){
return 1;
}else{
return -1;
}
});
}
alert(arraySort(["abd","cba","ba"]));

 2、如何用代码将类数组如arguments转换为数组:

Array.prototype.slice.call(arguments,0);

3、请为JavaScript每个Array对象添加一个类似于PHP的shuffle()(意思就是将数组重新排列)的方法。粘代码:

我的代码:

Array.prototype.shuffle=function(){
var len=this.length;
var b=[];
for(var i=0;i<len;i++){
var index=parseInt(Math.random()*(len-i));
b[i]=this[index];
this.splice(index,1);
}
for ( i = 0; i <len; i++) {
this[i]=b[i];
};
}
var a=[1,2,3,4,5,6,7,8];
a.shuffle();
alert(a);

 写完之后就感觉,写的好笨啊,能不能简单点呢?

改!

 Array.prototype.shuffle = function() {
for(var j, x, i = this.length; i; j = parseInt(Math.random() * i), x = this[--i], this[i] = this[j], this[j] = x);
return this;
};

  是不是简单多了,而且有逼格,少用了一个循环,开始咋那么笨!

阿里笔试js题的更多相关文章

  1. 网易实习笔试真题C/C++

    刚做的时候根本就没有想到解题思路,刚好看到了别人的思路,自己写了一下.里面对unordered_map及vector二维数组的建立很灵活,另外区别了一下map,unordered_map,hash_m ...

  2. 一道js题

    <script> var a = 5; function test(){ this.a = 10; a = 15 this.func = function(){ var a = 20 ; ...

  3. 2019阿里校招测评题,光明小学完全图最短路径问题(python实现)

    题目:光明小学的小朋友们要举行一年一度的接力跑大赛了,但是小朋友们却遇到了一个难题:设计接力跑大赛的线路,你能帮助他们完成这项工作么?光明小学可以抽象成一张有N个节点的图,每两点间都有一条道路相连.光 ...

  4. 美团点评2017校招笔试真题-算法工程师A

    美团点评2017校招笔试真题-算法工程师A 1.下面哪种STL容器的实现和其它三个不一样 A. set B. deque C. multimap D. map 正确答案: B STL的容器可以分为以下 ...

  5. 美团点评2017校招笔试真题-算法工程师B

    美团点评2017校招笔试真题-算法工程师B 1.以下关于经典的k-means聚类的说法哪个是错误的? A:k-means聚类算法是全局收敛的 B:k-means的聚类结果和初始聚类中心点的选取有关 C ...

  6. 『Python题库 - 填空题』151道Python笔试填空题

    『Python题库 - 填空题』Python笔试填空题 part 1. Python语言概述和Python开发环境配置 part 2. Python语言基本语法元素(变量,基本数据类型, 基础运算) ...

  7. 《PHP面试笔试真题库》——PHP面试的好帮手

    你好,是我琉忆. 一个文艺的PHP开发工程师. 很荣幸能够在这里带来我的第一本新书--<PHP程序员面试笔试真题库>. 一.创作过程 <PHP 程序员面试笔试真题库>是我的第三 ...

  8. 《PHP程序员面试笔试真题解析》——新书上线

    你好,是我--琉忆.很高兴可以跟你分享我的新书. 很高兴,在出版了PHP程序员面试笔试宝典后迎来了我的第二本书出版--<PHP程序员面试笔试真题解析>. 如果你是一个热爱PHP的程序员,刚 ...

  9. 360技术笔试编程题 - 无意间看到这么个东西,闲来无事用JS写了一下

    题目描述 为考验各自的数学能力,小B和小A经常在一起玩各种数值游戏,这一次他们又有了一种新玩法.每人从指定的数值范围中各自选择一个整数,记小A选择的数值为a,小B选择的数值为b.他们用一个均匀分布的随 ...

随机推荐

  1. hdu_2446_Shell Pyramid(数学,二分)

    题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=2446 题意:题面很大,有用的就那么几句,意思就是用自然数来堆它画的那个金字塔,比如第一个金字塔的第一个 ...

  2. 模拟post请求-->测试api是否可用-->再交给ios开发

    提交给iso开发前.先模拟post提交,测试返回是否正确 =============post.php文件 ios每次最少要提交5个数据, 加密串 seqno , 请求验证码 source, 设备唯一标 ...

  3. java中的Unicode中文转义

    String ori = "\u5e7f\u4e1c"; public static String convertUnicode(String ori) { char aChar; ...

  4. MinGW 运行C++程序的方法

    1:安装好 MinGW 及 GCC 编译器后 , 当然 MinGW 全安装最保险了,不会太费劲 2:配置环境变量(注:可能需要重启后生效) 计算机 --> 属性 --> 高级系统设置 -- ...

  5. MyEclipse build path no actions available

    MyEclipse,是在eclipse 基础上加上自己的插件开发而成的功能强大的企业级集成开发环境,主要用于Java.Java EE以及移动应用的开发.MyEclipse的功能非常强大,支持也十分广泛 ...

  6. ignite客户端找不到服务端的时候如何设置退出

    ignite启动客户端时需要有服务端支持: Ignition.setClientMode(true); Ignition.start("ignite.xml"); 这里有个问题,当 ...

  7. Hibernate 系列教程4-单向多对一

    项目图片 hibernate.cfg.xml <mapping resource="com/jege/hibernate/one/way/manytoone/User.hbm.xml& ...

  8. CodeForces 719B Anatoly and Cockroaches 思维锻炼题

    题目大意:有一排蟑螂,只有r和b两种颜色,你可以交换任意两只蟑螂的位置,或涂改一个蟑螂的颜色,使其变成r和b交互排列的形式.问做少的操作次数. 题目思路:更改后的队列只有两种形式:长度为n以r开头:长 ...

  9. Jenkins+SonarQube代码质量检查自动化

    基础概念百度百科:Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:1.持续的软件版本发布/测试项目.2.监控外部调用执行的工作.前面[Sonarqube 代码质量 ...

  10. 学习笔记——Windows7下Android与Cocos2dx的安装配置

    1.下载eclipse.安卓SDK.配置ADT等,android开发必备,略. 2.下载NDK.Cocos2dx.Cygwin 2.1NDK下载,请下载对应的32位或者64的较大的压缩包(较小的只有t ...