理順 JavaScript 11 陣列

2021-09-05 20:30:11 字數 4487 閱讀 2198

陣列直接量

var arr;

arr = ['aa', 'bb', 'cc'];

alert(arr.tolocalestring()); //aa, bb, cc

arr = [11, 22, 33];

alert(arr.tolocalestring()); 22.00, 33.00

/* 陣列元素可以是任意型別, 包括陣列本身 */

arr = ['aa', 'bb', 123];

alert(arr.tolocalestring()); //aa, bb, 123.00

alert(arr[0]); //aa

alert(arr[1]); //bb

alert(arr[2]); //123

/* 可先站定維數, 以後賦值 */

arr = [ , , ];

arr[0] = 11;

arr[1] = 22;

arr[2] = 33;

alert(arr.tolocalestring()); 22.00, 33.00

/* 先給個空陣列, 再指定維數 */

arr = ;

alert(arr.length); //0

arr.length = 3;

arr[0] = 11;

arr[1] = 22;

arr[2] = 33;

alert(arr.tolocalestring()); 22.00, 33.00

/* 可用 length 屬性改變陣列的大小 */

arr = [1,2,3,4,5,6];

arr.length = 2;

alert(arr.tolocalestring()); 2.00

陣列物件的三種建立方法

var arr;

arr = new array(11, '22', true);

alert(arr.tolocalestring()); 22, true

arr = new array(3);

arr[0] = 11;

arr[1] = '22';

arr[2] = true;

alert(arr.tolocalestring()); 22, true

arr = new array();

arr.length = 3;

arr[0] = 11;

arr[1] = '22';

arr[2] = true;

alert(arr.tolocalestring()); 22, true

join: 陣列到字串

var arr, str;

arr = new array('a', 'b', 1, 2, 3);

str = arr.join();

alert(str); //a,b,1,2,3

/* 可指定分隔符 */

str = arr.join(' * ');

alert(str); //a * b * 1 * 2 * 3

reverse、sort: 倒置與排序

var arr;

arr = new array('c', 'd', 'e', 'a', 'b');

arr.reverse();

alert(arr.tolocalestring()); //b, a, e, d, c

arr.sort();

alert(arr.tolocalestring()); //a, b, c, d, e

concat: 新增返回新陣列

var arr;

arr = [1, 2, 3]

arr = arr.concat(4, 5);

alert(arr.join()); //1, 2, 3, 4, 5

push、pop: 從尾部新增與刪除; push 返回新長度, pop 返回被刪除的元素

var arr;

arr = [1, 2, 3, 4, 5]

arr.pop();

alert(arr.join()); //1,2,3,4

arr.push(7, 8, 9);

alert(arr.join()); //1,2,3,4,7,8,9

arr.push(0, ['a', 'b']);

alert(arr.join()); //1,2,3,4,7,8,9,0,a,b

arr.pop();

alert(arr.join()); //1,2,3,4,7,8,9,0

arr.pop();

alert(arr.join()); //1,2,3,4,7,8,9

unshift、shift: 從開始插入與刪除; unshift 返回新長度, shift 返回被刪除的元素

var arr;

arr = [1, 2, 3]

arr.unshift(5, 6);

alert(arr.join()); //5,6,1,2,3

arr.shift();

arr.shift();

alert(arr.join()); //1,2,3

arr.unshift([5,6,7,8]);

alert(arr.join()); //5,6,7,8,1,2,3

arr.shift();

alert(arr.join()); //1,2,3

splice: 刪除、替換、插入; 如果有刪除則返回被刪除元素的陣列

var arr;

arr = [1, 2, 3, 4, 5, 6, 7, 8]

arr.splice(4, 3); //從第 4 個(0起)開始刪除 3 個

alert(arr.join()); //1, 2, 3, 4, 8

arr.splice(3, 3, 'a', 'b', 'c'); //從第 3 個(0起)開始替換 3 個

alert(arr.join()); //1, 2, 3, a, b, c

arr.splice(3, 0, 7, 8, 9); //從第 3 個(0起)開始插入 3 個; 插入時第二個引數給 0

alert(arr.join()); //1, 2, 3, 7, 8, 9, a, b, c

slice: 提取子陣列; 返回新陣列

var arr;

arr = [1, 2, 3, 4, 5, 6, 7, 8]

arr = arr.slice(2, 5);

alert(arr.join()); //3,4,5

/* 引數為負表示從後面數 */

arr = [1, 2, 3, 4, 5, 6, 7, 8]

arr = arr.slice(2, -2);

alert(arr.join()); //3,4,5,6

arr = [1, 2, 3, 4, 5, 6, 7, 8]

arr = arr.slice(-3, -1);

alert(arr.join()); //6,7

tostring、valueof

var arr;

arr = [1, 2, 3, 'a', 'b', 'c']

alert(arr); //1,2,3,a,b,c

alert(arr.tostring()); //1,2,3,a,b,c

alert(arr.valueof()); //1,2,3,a,b,c

alert(arr.tolocalestring()); 2.00, 3.00, a, b, c

遍歷與模擬的多維陣列

var arr;

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

alert(arr[1][1]); //5

arr = new array(new array(1,2,3), new array(4,5,6), new array(7,8,9));

alert(arr[1][1]); //5

alert(arr) //1,2,3,4,5,6,7,8,9

for (i=0; iarr = [1,2,3,4,5,6,7,8,9];

for (i in arr)

arr = new array([1,2,3], [4,5,6], [7,8,9]);

for (i in arr)

for (i in arr) for (j in arr[i])

document.write(arr[i][j] + '

'); //1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9

2023年11個Javascript動畫庫

經過一些研究,我收集了11個最好的庫,在你的應用程式中使用。我還新增了一些,主要是非維護的,有用的庫。使用ui元件時,您還可以使用bit輕鬆地在不同應用程式之間共享這些元件,而不是複製貼上它們,從不同專案進行更改並與其他專案協作。bit 使用 元件共享和構建 bit可幫助您在專案和應用程式之間共享,...

javascript 四數之和LeetCod 18

給定乙個包含 n 個整數的陣列nums和乙個目標值target,判斷nums中是否存在四個元素 a,b,c 和 d 使得 a b c d 的值與target相等?找出所有滿足條件且不重複的四元組。注意 答案中不可以包含重複的四元組。var foursum function nums,target 先...

javascript醜數的解法

第一種 沒有看其他解法,自己寫的解法 1.寫乙個無限迴圈,然後如果當前數是醜數,則count 2.如果count n 則湊齊了n個醜數,返回 3.如果當前數不在醜數集合中 初始化為 1,2,3,5 4.如果當前醜數大於6,則需要判斷,如果這個數的約數只有1和他本身,則這個數不是醜數 5.進行拆分,判...