js数组方法,数组排序


js数组方法

DOCTYPE html>
<html>
<body>

<h2>pop()h2>

<p>pop() 方法从数组中删除最后一个元素。p>

<p id="demo1">p>
<p id="demo2">p>
<p id="demo3">p>
<p id="demo4">p>
<script>
var fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo1").innerHTML = fruits;

fruits.pop();              // 从 fruits 删除最后一个元素("Mango")
document.getElementById("demo2").innerHTML = fruits;

fruits.push("Kiwi");       //  向 fruits 添加一个新元素
document.getElementById("demo3").innerHTML = fruits;

fruits.shift();            // 从 fruits 删除第一个元素 "Banana"
document.getElementById("demo4").innerHTML = fruits;

script>

body>
html>

删除数组元素

DOCTYPE html>
<html>
<body>

<p>splice() 方法可用于删除数组元素。p>

<button onclick="myFunction()">试一试button>

<p id="demo">p>

<script>
var fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits;
function myFunction() {
  fruits.splice(0, 2);//第一个参数(0)定义新元素应该被添加的位置,第二个参数(2)定义应该删除多个元素。
  document.getElementById("demo").innerHTML = fruits;
}
script>

body>
html>

合并数组

DOCTYPE html>
<html>
<body>

<p>concat() 方法用于合并(连接)数组:p>

<p id="demo">p>

<script>
var arr1 = ["Emma", "Isabella"];
var arr2 = ["Jacob", "Michael", "Ethan"];
var arr3 = ["Joshua", "Daniel"];

var myChildren = arr1.concat(arr2, arr3); 

document.getElementById("demo").innerHTML = myChildren;
script>

body>
html>

选择数组元素

DOCTYPE html>
<html>
<body>

<p>当给 slice() 方法赋予两个参数时,它从 <i>starti> 参数中选择数组元素,直到(但不包括)<i>endi> 参数:p>

<p id="demo">p>

<script>
var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var citrus = fruits.slice(1,3);
document.getElementById("demo").innerHTML = fruits + "

" + citrus; script> body> html>

数组排序

DOCTYPE html>
<html>
<body>

<p>reverse() 方法反转数组中的元素。p>

<p>通过组合 sort() 和 reverse(),您可以按降序对数组进行排序。p>

<button onclick="myFunction()">试一试button>

<p id="demo">p>

<script>

var fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits;

function myFunction() {

  fruits.sort();//数组排序

  fruits.reverse();//数组反转
  document.getElementById("demo").innerHTML = fruits;
}
script>

body>
html>

该函数很适合字符串("Apple”会排在"Banana"之前)。
不过,如果数字按照字符串来排序,则"25"大于"100",因为“2"大于"1".。
正因如此,sort()方法在对数值排序时会产生不正确的结果。

通过比值函数来改正

DOCTYPE html>
<html>
<body>

<p>单击按钮以升序对数组进行排序。p>

<button onclick="myFunction()">试一试button>

<p id="demo">p>

<script>
var points = [40, 100, 1, 5, 25, 10];
document.getElementById("demo").innerHTML = points;  

function myFunction() {
  points.sort(function(a, b){return a - b});
  document.getElementById("demo").innerHTML = points;
}
script>

body>
html>

相关