數(shù)組練習題

?1.用js實現(xiàn)隨機選取10~100之間的10個數(shù)字,存入一個數(shù)組,并排序

? ? ? ? //要是獲取不重復的,則對隨機數(shù)再進行去重。

? ? ? ? function arrRandom() {

? ? ? ? ? ? var arr = [];

? ? ? ? ? ? for (var i = 0; i < 10; i++) {

? ? ? ? ? ? ? ? var num = getRandomNum(10, 100);

? ? ? ? ? ? ? ? arr.push(num);

? ? ? ? ? ? }

? ? ? ? ? ? return arr.sort(function (a, b) {

? ? ? ? ? ? ? ? return a - b;

? ? ? ? ? ? });

? ? ? ? }console.log(arrRandom());

//2.獲取范圍內的隨機數(shù)

function getRandomNum(startNum, endNum) {

? ? if (startNum <= endNum) {

? ? ? ? return parseInt(Math.random() * (endNum - startNum + 1) + startNum);

? ? }

? ? else {

? ? ? ? return parseInt(Math.random() * (startNum - endNum + 1) + endNum);

? ? }

}


2.編寫盡可能簡潔的javascript代碼,找到在第一個數(shù)組array1中出現(xiàn),而在第二個數(shù)組array2中沒有出現(xiàn)的數(shù)字。

indexof()判斷數(shù)字是否出現(xiàn),join()用于把數(shù)組中的所有元素連接成一個字符串,元素是通過指定的分隔符進行分隔的。

????????????????//方法1--注意這種方法只能對比數(shù)字。

? ? ? ? ? ? ? ? // 并且有個bug,要是數(shù)組一中第一個元素是1,數(shù)組二中最后一個元素尾數(shù)也是1,則認為數(shù)組一中的第一個元素和數(shù)組二中的最后一個元素相同。

? ? ? ? ? ? ? ? function findNullOfArr(arrOne, arrTwo) {

? ? ? ? ? ? ? ? ? ? var str = arrTwo.join("");

? ? ? ? ? ? ? ? ? ? var result = [];

? ? ? ? ? ? ? ? ? ? for (var i = 0; i < arrOne.length; i++) {

? ? ? ? ? ? ? ? ? ? ? ? // 看到這里有個小點就是 indexOf 會做簡單的類型轉換,把數(shù)字轉換成字符串 '2' 然后再執(zhí)行。

? ? ? ? ? ? ? ? ? ? ? ? if (str.indexOf(arrOne[i]) == -1) {

? ? ? ? ? ? ? ? ? ? ? ? ? ? result.push(arrOne[i]);

? ? ? ? ? ? ? ? ? ? ? ? ? ? console.log(typeof arrOne[i]);

? ? ? ? ? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? ? ? return result;

? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? var arr1 = [1, 22, 3, 44, 5, 6, 7];

? ? ? ? ? ? ? ? var arr2 = [2, 3, 441];

? ? ? ? ? ? ? ? var b = [findNullOfArr(arr1, arr2)];

? ? ? ? ? ? ? ? console.log(b);

// 方法2--找到在第一個數(shù)組array1中出現(xiàn),而在第二個數(shù)組array2中沒有出現(xiàn)的數(shù)字。

? ? ? ? function duplicates(arrOne, arrTwo) {

? ? ? ? ? ? var final = [];

? ? ? ? ? ? var result = [];

? ? ? ? ? ? //數(shù)組一和數(shù)組二中都有的元素放進final。

? ? ? ? ? ? for (var i = 0; i < arrOne.length; i++) {

? ? ? ? ? ? ? ? for (var j = 0; j < arrTwo.length; j++) {

? ? ? ? ? ? ? ? ? ? if (arrOne[i] == arrTwo[j] && final.indexOf(arrOne[i]) == -1) {

? ? ? ? ? ? ? ? ? ? ? ? final.push(arrOne[i]);

? ? ? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? }

? ? ? ? ? ? }

? ? ? ? ? ? //數(shù)組一和final比較,final沒有的就放進去。

? ? ? ? ? ? for (var i = 0; i < arrOne.length; i++) {

? ? ? ? ? ? ? ? if (final.indexOf(arrOne[i]) == -1) {

? ? ? ? ? ? ? ? ? ? result.push(arrOne[i]);

? ? ? ? ? ? ? ? }

? ? ? ? ? ? }

? ? ? ? ? ? return result;

? ? ? ? }

? ? ? ? var arr1 = [2, 2, 3, 4, 5, 5, 7, "a"];

? ? ? ? var arr2 = [8, 2, 3, 4, 5, 5];

? ? ? ? console.log(duplicates(arr1, arr2));


3.數(shù)組去重。

var arrNum = [1,4,1,1,3,3,4,6,7,8,3,7,0,11,22,22];

????????方法1.遍歷數(shù)組法

最簡單的去重方法,實現(xiàn)思路:新建一新數(shù)組,遍歷傳入數(shù)組,值不在新數(shù)組就加入該新數(shù)組中;注意點:判斷值是否在數(shù)組的方法“indexOf”是ECMAScript5 方法,IE8以下不支持,需多寫一些兼容低版本瀏覽器代碼,源碼如下:

function arrNoRepeat(arr) {

? ? ? ? ? ? var newArr = [];

? ? ? ? ? ? for (var i = 0; i < arr.length; i++) {

? ? ? ? ? ? ? ? if (newArr.indexOf(arr[i]) == -1) {

? ? ? ? ? ? ? ? ? ? newArr.push(arr[i]);

? ? ? ? ? ? ? ? }

? ? ? ? ? ? }

? ? ? ? ? ? return newArr;

? ? ? ? }

? ? ? ? var arr = [2, 2, 1, 4, 5, 4];

? ? ? ? console.log(deleteRepeat(arr));

????方法2.優(yōu)化遍歷數(shù)組法

????該方法的實現(xiàn)代碼相當酷炫,實現(xiàn)思路:獲取沒重復的最右一值放入新數(shù)組。(檢測到有重復值時終止當前循環(huán)同時進入頂????層循環(huán)的下一輪判斷)推薦

// 思路:獲取沒重復的最右一值放入新數(shù)組

? ? ? ? var arr = [1, 3, 5, 7, 9, 1, 3, 5];

? ? ? ? function unique5(array) {

? ? ? ? ? ? var r = [];

? ? ? ? ? ? for (var i = 0, l = array.length; i < l; i++) {

? ? ? ? ? ? ? ? for (var j = i + 1; j < l; j++)

? ? ? ? ? ? ? ? ? ? if (array[i] === array[j]) j = ++i;

? ? ? ? ? ? ? ? r.push(array[i]);

? ? ? ? ? ? }

? ? ? ? ? ? return r;

? ? ? ? }

? ? ? ? console.log(unique5(arr));


4.現(xiàn)有一個數(shù)組(元素為數(shù)字,并且有可能重復),請給Array.prototype增加一個方法(方法名自取),該方法能去掉數(shù)組中全部最大和最小的數(shù)字。

數(shù)組最大值

Array.prototype.max = function(){? ? return Math.max.apply(null,this);}

數(shù)組最小值

Array.prototype.min = function(){? ? return Math.min.apply(null,this);}


5.給定一個數(shù)組實現(xiàn)字符串反轉,要求原地實現(xiàn)。

使用循環(huán)數(shù)組的方法:

var arr = new Array();

function myreverse(arr){? ?

?for(var i =0;i < arr.length/2;i ++){? ??

? ? var temp = arr[i];//交換變量? ? ? ?

?arr[i] = arr[arr.length - i - 1];? ? ?

?? arr[arr.length - i - 1] = temp;??

? }}


6.如何準確判斷一個javascript對象是數(shù)組?

標準方法:

if(object.prototype.toString.call(a) == '[object Array]'){? ? //是數(shù)組對象}

常用方法:

if(a.constructor == Array){? ? //是數(shù)組對象}


7.寫出一個javascript的函數(shù),實現(xiàn)對一個數(shù)組去重的功能。

構建一個新的數(shù)組存放結果。

for循環(huán)中每次從原數(shù)組中取出一個元素,用這個元素循環(huán)與結果數(shù)組對比。

若結果數(shù)組中沒有該元素,則存到結果數(shù)組中。

Array.prototype.unique1 = function(){? ??

var res = [this[0]];? ?

?for(var i =1;i < this.length;i ++){? ? ? ?

?var repeat = false;? ? ? ??

for(var j = 0;j < res.length;j ++){? ?

?? ? ? ? if(this[i] == res[j]){? ? ? ? ?

?? ? ? repeat = true;? ? ? ? ? ?

?? ? break;? ? ? ??

? ? }? ? ? ? }? ? ? ?

?if(!repeat){? ? ? ?

?? ? res.push(this[i]);? ? ??

? }? ? }? ??

return res;}

var b = arr.unique1()

? ? ? ? alert(b);


8.請寫出一個函數(shù),功能是刪除數(shù)組的指定下標元素。

array.pop();//刪除最后一個元素,并返回該元素.

array.shift();//刪除第一個元素,數(shù)組元素位置自動前移,返回被刪除的元素

array.splice(start,delCount);//從start的位置開始向后刪除delCount個元素

// 3.請寫出一個函數(shù),功能是刪除數(shù)組的指定下標元素。

? ? ? ? function deleteNumArr(arr, index) {

? ? ? ? ? ? if (isNaN(index) || index > arr.length - 1) {

? ? ? ? ? ? ? ? return false;

? ? ? ? ? ? }

? ? ? ? ? ? else {

? ? ? ? ? ? ? ? arr.splice(index, 1);

? ? ? ? ? ? ? ? return arr;

? ? ? ? ? ? }

? ? ? ? }

? ? ? ? var arr = [2, 3, 4, 5, 6];

? ? ? ? alert(deleteNumArr(arr, 1));


9.請寫一個函數(shù)removeVoid(arr),刪除該數(shù)組中值為“null,undefined”的項,返回原數(shù)組。

function removeVoid(arr) {

? ? ? ? ? ? for (var i = 0; i < arr.length; i++) {

? ? ? ? ? ? ? ? if (arr[i] == "" || arr[i] == "undefined" || !arr[i]) {//!arr[i])過濾不是數(shù)組的元素,比如null(空值)。

? ? ? ? ? ? ? ? ? ? arr.splice(i, 1);

? ? ? ? ? ? ? ? }

? ? ? ? ? ? }

? ? ? ? ? ? return arr;

? ? ? ? }

? ? ? ? var arr = [, 1, undefined, 2, null, 5];

? ? ? ? alert(removeVoid(arr));


10.數(shù)組去重,給Array本地對象增加一個原型方法。

? ? Array.prototype.delrepeat = function(){? ? ? ?

?????var arr = this;? ? ??

????? var _arr = new Array();??

? ? ? for(var i in arr){? ? ? ? ?

?? if(i == 'delrepeat') continue;? ? ? ??

? ? if(_arr.length == 0) _arr.push(arr[i]);? ? ? ? ?

?? for(var j = 0;j _arr.length - 2) _arr.push(arr[i]);? ? ??

? ? ? }? ? ? ? ?

?? return _arr;? ? ?

? }


11.用js實現(xiàn)隨機選取10~100之間的10個數(shù)字,存入一個數(shù)組,并排序。

function getRandom(istart,iend){//列出需要被選中的數(shù)據(jù)? ?

?var a1 = [];? ?

?for(var i = 0;i < 91;i ++){? ? ??

? a1[i] = i + 10;? ? }??

? //挑選出隨機數(shù)據(jù)? ??

var? a2 = [];? ?

?for(var j = 0;j < 10;j ++){? ?

?? ? a2.push(a1.splice(Math.floor(Math.random()*a1.length),1));

a2.sort();

alert(a2);}

getRandom(10,100);


12.把兩個數(shù)組合并,并刪除第二個元素。

var array1 = ['a','b','c'];

var array2 = ['d','e','f'];

var array3 = array1.concat(array2);

array3.splice(1,1);


13.根據(jù)每個元素的i屬性,由小到大排序如下數(shù)組。

var arr=[{i:5,v:1},{i:2,v:4},{i:3,v:2},{i:1,v:5},{i:4,v:3}];

解析:

arr.sort(function(a,b){? ? return a.i-b.i;? ? })

對于一個數(shù)組,sort()默認按字符編碼排序:

var testArray=[3,324,5345,6546,134,5654,665];testArray.sort();alert(testArray);

輸出結果是:134 3 324 5345 5654 6546 665

現(xiàn)在要讓它按照數(shù)值大小排序:

var testArray=[3,324,5345,6546,134,5654,665];testArray.sort(function(a,b){return a-b;});alert(testArray);

這里傳遞一個比較函數(shù)給sort,比較函數(shù)的邏輯是:如果兩參數(shù)的差值小于0,則表示a必須出現(xiàn)在b前面,否則在b后面。

輸出結果是:3 134 324 665 5345 5654 6546




1. 讀取學生的10門課的成績, 然后輸出10門課成績的最高分, 最低分, 總分, 平均分.

?? 提示:把10門課的成績保存如一個數(shù)組中.

<!DOCTYPE html>

<!--題目:讀取學生的10門課的成績, 然后輸出10門課成績的最高分, 最低分, 總分, 平均分.

? ? 提示:把10門課的成績保存如一個數(shù)組中.-->

varsum =0;

varave =0;

vararr = [90,100,10,20,30,40,50,60,70,80];

console.log(arr);

//排序

arr.sort(function(a, b){

returna - b;

? ? });

//最高分

functionlarge(arr){

returnarr[arr.length -1];

? ? };

//最低分

functionsmall(arr){

returnarr[0];

? ? };

//總分

functiontotal(arr){

for(vareleofarr) {

? ? ? ? ? ? sum += ele;

? ? ? ? }

returnsum;

? ? };

//平均分

functionave(arr){

returnsum / arr.length;

? ? }

//輸出

console.log("總分: "+ total(arr));

console.log("最高分: "+ large(arr));

console.log("最低分: "+ small(arr));

console.log("平均分: "+ ave(arr));

<!--記得再次用原型替換3進行調試-->

用函數(shù)封裝起來:(更具面向對象的思想)

<!DOCTYPE html>

Title

functionStudent(){

this.scores = [];

this.init =function(){

for(vari =0; i <3; i++){

varscore = +prompt("請輸入學生的成績:");

this.scores.push(score);

? ? ? ? }

? ? };

this.max =function(){

varscores =this.scores;

varm = scores[0];// ["100", "200", "40"]

for(vari =1; i < scores.length; i++){

if(m < scores[i]){

? ? ? ? ? ? ? ? m = scores[i];

? ? ? ? ? ? }

? ? ? ? }

returnm;

? ? }

this.min =function(){

varscores =this.scores;

varm = scores[0];// ["100", "200", "40"]

for(vari =1; i < scores.length; i++){

if(m > scores[i]){

? ? ? ? ? ? ? ? m = scores[i];

? ? ? ? ? ? }

? ? ? ? }

returnm;

? ? }

this.sum =function(){

vars =0;

for(vareofthis.scores){

? ? ? ? ? ? s += e;

? ? ? ? }

returns;

? ? }

this.avg =function(){

returnthis.sum() /this.scores.length;

? ? }

}

vars1 =newStudent();

s1.init();//初始化學生的成績

console.log(s1.max());

2.?創(chuàng)建100個隨機的10到60的隨機整數(shù), 然后分別統(tǒng)計每個數(shù)字出現(xiàn)的次數(shù)

<!DOCTYPE html>

Title

<!--創(chuàng)建100個隨機的10到60的隨機整數(shù), 然后分別統(tǒng)計每個數(shù)字出現(xiàn)的次數(shù)-->

//arr是放隨機數(shù)產(chǎn)生的數(shù)字,newArr是放重復元素和重復個數(shù)的二維數(shù)組

vararr = [];

varnewArr = [];

//js的數(shù)組可以動態(tài)增加,使用數(shù)組字面量創(chuàng)建

for(vari =0; i <100; i++) {

//用random判斷隨機數(shù)其實不是perfect(正態(tài)分布)

arr[i] =parseInt(Math.random() *50+10);

? ? }

console.log("隨機數(shù)(正態(tài)分布):\n"+ arr);

//對數(shù)組進行排序

arr.sort(function(a, b){

returna - b;//升序

? ? });

console.log("隨機升序排序:\n"+ arr);

//判斷數(shù)組元素的重復個數(shù),這樣算法是相對而言比較高效的,省掉了低效的代碼率

for(vari =0; i < arr.length;) {

varcount =0;

for(varj = i; j < arr.length; j++) {

if(arr[i] == arr[j]) {

? ? ? ? ? ? ? ? count++;

}else{

break;

? ? ? ? ? ? }

? ? ? ? }

? ? ? ? newArr.push([arr[i], count]);

? ? ? ? i += count;

? ? }

//輸出二維數(shù)組

for(vari =0; i < newArr.length; i++) {

console.log(newArr[i][0] +"重復次數(shù):"+ newArr[i][1]);

? ? }

在這順便講解一下隨機數(shù)生成的方法,以后只要涉及到隨機數(shù),就套路進去就行,就跟數(shù)學公式一樣。(證明略)

如何使用js生成n到m間的隨機數(shù)字,主要目的是為后期的js生成驗證碼做準備。

方法1:Math.random()函數(shù)返回0和1之間的偽隨機數(shù),可能為0,但總是小于1,[0,1)

生成n-m,包含n但不包含m的整數(shù):

Step1:算出 m-n的值,假設等于w

Step2:Math.random()*w

Step3:Math.random()*w+n

Step4:parseInt(Math.random()*w+n, 10)? 在這里10表示10進制,默認就是10進制。

方法2:生成n-m,不包含n但包含m的整數(shù):?

Step1:算出 m-n的值,假設等于w

Step2:Math.random()*w

Step3:Math.random()*w+n

Step4:Math.floor(Math.random()*w+n) + 1????

注:Math.floor() 返回小于等于數(shù)字參數(shù)的最大整數(shù),對數(shù)字進行下舍入

一般記住這兩種方法就行了。

另解:(在那里要不要加1,看自己的情況,掌握怎么算的):

<!DOCTYPE html>

Title

//? [0, 1)? [0, 51)? [10, 61)? [10, 60]

// m = 10 n= 60

functionrandomInt(m, n){//區(qū)間: [m, n]

returnparseInt(Math.random() * (n - m +1) + m);

}

/*創(chuàng)建一個長度是 count, 元素的值的范圍 是 [m, n]的數(shù)組*/

functioncreateArray(count, m, n){

vararr = [];

for(vari =0; i < count; i++){

? ? ? ? arr.push(randomInt(m, n));

? ? }

returnarr;

}

functiontongji(){

varobj = {};

vararr = createArray(400,10,19);

for(varnum =10; num <=19; num++){

varc =0;

for(vareofarr){

if(e == num){

? ? ? ? ? ? ? ? c++;

? ? ? ? ? ? }

? ? ? ? }

obj[num +""] = c;

? ? }

returnobj;


}

varresult = tongji();

console.log(10+"的個數(shù):"+ result["10"]);

console.log(result["11"]);

console.log(result);

3. 定義一個函數(shù), 判斷數(shù)組中是否所有的數(shù)字都大于0

??? 提示: 傳入一個數(shù)組, 返回布爾值

<!DOCTYPE html>

<html lang="en">

<head>

? ? <meta charset="UTF-8">

? ? <title>Title</title>

</head>

<!--定義一個函數(shù), 判斷數(shù)組中是否所有的數(shù)字都大于0

? ? 提示: 傳入一個數(shù)組, 返回布爾值

-->

<body>

<script>

? ? var arr=[10,20,3,1,3.1,9,1,34,90,0,-100,100];

? ? var flag=true;

? ? for(var i=0;i<arr.length;i++){

? ? ? ? if(arr[i]<0){

? ? ? ? ? ? flag=false;

? ? ? ? ? ? console.log("數(shù)組存在第一個非正值為:"+arr[i]+" 其數(shù)組下標為 "+i);

? ? ? ? ? ? break;

? ? ? ? }

? ? }

? ? if(flag){

? ? ? ? console.log("數(shù)組恒正~");

? ? }else{

? ? ? ? console.log("因此,數(shù)組不是恒正的~");

? ? }

</script>

</body>

</html>

4. 封裝函數(shù): 把兩個數(shù)組共同的元素放入一個新的數(shù)組, 并返回新的數(shù)組

??? 提示: 傳入兩個數(shù)組, 返回值為新的數(shù)組

<!DOCTYPE html>

Title

<!--封裝函數(shù): 把兩個數(shù)組共同的元素放入一個新的數(shù)組, 并返回新的數(shù)組

? ? 提示: 傳入兩個數(shù)組, 返回值為新的數(shù)組

-->

vararr1 = [1,2,3,"aaa","hello",999,-1];

vararr2 = [3,78,"aaa","bbb",99,1,-1,"hello"];

varnewArr = [];

//兩層嵌套,效率很低。

functioncommon(arr1, arr2){

for(vari =0; i < arr1.length; i++) {

for(varj =0; j < arr2.length; j++) {

if(arr1[i] === arr2[j]) {

? ? ? ? ? ? ? ? ? ? newArr.push(arr1[i]);

? ? ? ? ? ? ? ? }

? ? ? ? ? ? }

? ? ? ? }

? ? }

? ? common(arr1, arr2);

console.log(newArr);

5. 定義一個函數(shù): 可以把數(shù)組中的下標為 3 的元素移到數(shù)組的開頭.

??? 提示: 傳入一個數(shù)組

<!DOCTYPE html>

Title

<!--定義一個函數(shù): 可以把數(shù)組中的下標為 3 的元素移到數(shù)組的開頭.

? ? 提示: 傳入一個數(shù)組

-->

vararr = [1,2,3,4,5,6,7,8,9,111];

console.log("原數(shù)組: "+ arr);

//函數(shù)alter將下標為3的移動到開頭

functionalter(arr){

vartemp = arr[3];

arr.splice(3,1);

arr.splice(0,0, temp);

? ? }

? ? alter(arr);

console.log("移動后數(shù)組: "+ arr);

6. 有一個從大到小排好序的數(shù)組{99,85,82,63,60}。

??? 現(xiàn)從頁面輸入一個數(shù),要求按原來的規(guī)律將它插入數(shù)組中。

??? 假設你輸入的80,則應該插入到82和63之間。

<!DOCTYPE html>

<html lang="en">

<head>

? ? <meta charset="UTF-8">

? ? <title>Title</title>

</head>

<!--題目:有一個從大到小排好序的數(shù)組{99,85,82,63,60}。

? ? 現(xiàn)從頁面輸入一個數(shù),要求按原來的規(guī)律將它插入數(shù)組中。

? ? 假設你輸入的80,則應該插入到82和63之間。

-->

<!--

此題方法集錦:

法1:投機取巧? 直接先把數(shù)字插入到數(shù)組頭部或者尾部,然后一塊排序,很ok吧。

法2:用折半查找二分法,在大樣本數(shù)據(jù)下比較高效,本題解法實則時間復雜度達到O(n),而折半O(log2n)

-->

<body>

<script>

? ? //需插入的數(shù)字

? ? var insertNum=16;

? ? //假設未排序,自己先排序一下

? ? var arr=[88,98,2,5,8,10,25,36];

? ? arr.sort(function (a,b) {

? ? ? ? return b-a;? ? //降序排列

? ? });

? ? console.log("降序排列的數(shù)組為:"+arr);

? ? // 此循環(huán)得到的i值就是排序好的數(shù)組最接近insertNum值得那個最大下標,雖然效率很差。

? ? for(var i=0;i<arr.length;i++){

? ? ? ? if(arr[i]>=insertNum){

? ? ? ? ? ? var temp=i;

? ? ? ? }

? ? }

? ? //插入到下標為temp+1的位置

? ? arr.splice(temp+1,0,insertNum);

? ? //輸出info

? ? console.log("插入數(shù)字"+insertNum+"后的新數(shù)組為: "+arr);

</script>

</body>

</html>

另解:

<script>

/*7. 有一個從大到小排好序的數(shù)組{99,85,82,63,60}。

? ? 現(xiàn)從頁面輸入一個數(shù),要求按原來的規(guī)律將它插入數(shù)組中。

? ? 假設你輸入的80,則應該插入到82和63之間。*/

functioninsert(arr, num){

for(vari =0; i < arr.length; i++){

if(arr[i] < num){

arr.splice(i,0, num);

return;// 直接結束函數(shù)

? ? ? ? }

? ? }

? ? arr.push(num);

}

vararr = [99,85,82,63,60];

insert(arr,610);

console.log(arr);

7. 一個數(shù)字中有20個元素,對前10個元素使用升序,后10個元素使用降序。

??? 元素都是整數(shù)。

<!DOCTYPE html>

Title

//數(shù)組元素20個

vararr = [100,12,34,67,23,16,6,9,24,79,2,90,33,69,1,34,-2,0,666,1000];

//切片

vararr1=arr.slice(0,10);

vararr2=arr.slice(10);

//前升序

arr1.sort(function(a,b){

returna-b;

? ? });

//后降序

arr2.sort(function(a,b){

returnb-a;

? ? });

//組合新數(shù)組(cs6)并輸出

varnewArr = [...arr1,...arr2];

console.log("前升序后降序的數(shù)組為: "+ newArr);

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,837評論 6 531
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,196評論 3 414
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,688評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,654評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,456評論 6 406
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 54,955評論 1 321
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,044評論 3 440
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,195評論 0 287
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 48,725評論 1 333
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,608評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,802評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,318評論 5 358
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 44,048評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,422評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,673評論 1 281
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,424評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,762評論 2 372

推薦閱讀更多精彩內容