?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);