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 条评论
登录 后参与评论

相关文章

来自专栏LinkedBear的个人空间

唠唠SE的面向对象-12——访问修饰符 原

853
来自专栏GreenLeaves

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

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

1646
来自专栏java一日一条

一个以前没有注意的问题:java构造函数的执行顺序

昨天在改一处代码时发现执行的过程和预想的不一样,仔细探究才发现是构造器执行顺序问题.(汗自己一下,基础不够扎实) 特地做了一些尝试然后把java构造器的执行顺...

772
来自专栏用户2442861的专栏

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

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

501
来自专栏技术之路

c++ 数组

数组就是一组元素的内存位置,各个内存位置可以存储相同数据类型的数据项,而我们可以用相同的变量名引用所有的内存地址 初始化数组 int myA[5]={1,2,3...

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

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

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

27511
来自专栏java一日一条

一个以前没有注意的问题:java构造函数的执行顺序

昨天在改一处代码时发现执行的过程和预想的不一样,仔细探究才发现是构造器执行顺序问题.(汗自己一下,基础不够扎实) 特地做了一些尝试然后把java构造器的执行顺...

501
来自专栏https://www.cnblogs.com/L

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

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

871
来自专栏Android干货

源码浅谈(二):java中的 Integer.parseInt(String str)方法

一、parseInt方法 ,可以看到默认又调用了parseInt(s,10) ,  第二个参数为基数,默认10 ,当然也可以自己设置 

431
来自专栏java一日一条

一个以前没有注意的问题:java构造函数的执行顺序

昨天在改一处代码时发现执行的过程和预想的不一样,仔细探究才发现是构造器执行顺序问题.(汗自己一下,基础不够扎实) 特地做了一些尝试然后把java构造器的执行顺...

562

扫码关注云+社区