2016.01.07 HTML5真题练习

HTML5学堂:每天一道题,强壮程序员!今日主要涉及01.06日,数组操作题目的解答,以及一道涉及数组拼接的题目。

HTML5真题【2016.01.06】答案解析

01.06日真题题目如下,最终输出的结果是多少?

<script>
       var a = [33, 2, 111, 88, 121];
       console.log(a.sort());
       function ascending(a, b) { return a-b;}
       console.log(a.sort(ascending));
       function descending(a, b) { return b-a;}
       console.log(a.sort(descending));
</script>

本题目的分别答案是:[111, 121, 2, 33, 88]、[2, 33, 88, 111, 121]、[121, 111, 88, 33, 2]。

答案解析:本题目主要涉及数组元素的操作。

sort()方法将数组中的元素排序并返回排序后的数组。当不带参数调用sort()时,数组元素以字母表顺序排序输出,即上题中的第一个输出语句输出的结果。

为了按照其他的方式而非字母表的顺序进行数组的排序,必须给sort()方法传递一个函数。该函数决定了它的两个参数在排序好的数组中的先后顺序。

所以,假设第一个参数要在前面,比较函数应该返回的是一个小于0的数值,如上题的ascending()函数,返回的是a-b的值,数组按照升序输出[2, 33, 88, 111, 121]。

假设第一个参数要在后面,比较函数应该返回的是一个大于0的数值,如上题的descending()函数,返回的是b-a的值,数组按照降序输出[121, 111, 88, 33, 2]。

相关知识链接:数组与字符串

HTML5真题【2016.01.07】题目

<script>
       var num = [1, 3, 5];
       console.log(num.concat(7, 9));
       console.log(num.concat([7, 9]));
       console.log(num.concat([7, 9], [11, 13]));
       console.log(num.concat(7, [9, [11, 13]]));
</script>

原文发布于微信公众号 - HTML5学堂(h5course-com)

原文发表时间:2016-01-12

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏小樱的经验随笔

【Java学习笔记之三十二】浅谈Java中throw与throws的用法及异常抛出处理机制剖析

异常处理机制 异常处理是对可能出现的异常进行处理,以防止程序遇到异常时被卡死,处于一直等待,或死循环。 异常有两个过程,一个是抛出异常;一个是捕捉异常。 抛出异...

36360
来自专栏GreenLeaves

JavaScript之面向对象的概念,对象属性和对象属性的特性简介

  一、大家都知道,面向对象语言有一个标志,那就是他们都有类的概念,通过类我们可以创建任意多个具有相同属性和方法的对象。但ECMAScript(指定JavaSc...

18160
来自专栏用户2442861的专栏

Python补充11 序列的方法 正则表达式 (re包)

作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢!

9710
来自专栏个人随笔

Java 高级开发必修知识---反射

程序猿们经常说的一句话:反射反射。。。程序员的快乐 反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法; 对于任意一个对象,都能够调用它的...

43750
来自专栏小樱的经验随笔

析构函数的用法【简单理论讲解】

析构函数是“反向”的构造函数。它们在对象被撤消(回收)时调用。析构函数的名 称除了最前面的“~”符号外,与类的名称相同。例如,类String的析构函数是~str...

298110
来自专栏编程

JavaSE基础:包装类

包装类 1.为什么需要包装类? Java在设计之初有一个基本原则:一切皆对象,一切的操作都要求用对象的形式进行描述。但是这里面就会出现一个矛盾,基本数据类型不是...

21360
来自专栏java工会

Java基础第一阶段知识点,招实习的面试官都在问这些

a) 答:Java源文件被编译成字节码的形式,无论在什么系统环境下,只要有java虚

14010
来自专栏LhWorld哥陪你聊算法

【Scala篇】--Scala初始与基础

scala 中的object是单例对象,相当于java中的工具类,可以看成是定义静态的方法的类。object不可以传参数。另:Trait不可以传参数

16810
来自专栏十月梦想

js对象创建

15630
来自专栏大眼瞪小眼

介绍C语言指针

引用传递是C++才有的特性,C语言只支持值传递。所以C语言只能通过传指针来达到在函数内修改函数外变量的功能。也就是swap(int &a,int &b)在C语言...

24410

扫码关注云+社区

领取腾讯云代金券