//把一个字符串分割成数组,利用 字符串名.split() 函数进行分割,split(arg1, arg2)中arg1表示把字符串中什么作为分隔符,arg2表示分割出前几个
//输出会默认用逗号分隔
<script>
var str = "What the ghost";
document.write(str.split(" ") + "<br/>"); //把空格作为分隔符
document.write(str.split("h") + "<br/>"); //把h作为分隔符
document.write(str.split("") + "<br/>"); //空字符作为分隔符表示把每个字符分割出来包括空格
document.write(str.split(" ", 2) + "<br/>"); //把空格作为分隔符,只分割前两个出来
document.write(str.split(" ")[1] + "<br/>"); //把分割所得数组中的第二个元素输出
//遍历数组
var arr = str.split(" ");
for(var i=0; i<arr.length; i++)
document.write(arr[i] + " ");
document.write("<br/>");
//另一种遍历方法
for(var key in arr);
document.write(arr[key] + " ");
document.write("<br/>");
//就算给arr加长下标用字符串也行, 但是这种非数字下标不会改变数组的长度, 数组的长度是按数字下标的最大值+1来算
arr["gg"] = "阿西坝"
for(var key in arr)
document.write(key + ":" + arr[key] + "<br/>");
</script>
输出如下:
What,the,ghost
W,at t,e g,ost
W,h,a,t, ,t,h,e, ,g,h,o,s,t
What,the
the
What the ghost
What the ghost
0:What
1:the
2:ghost
gg:阿西坝
//二维数组的定义和遍历
<script>
var arr = [["什", "么", "鬼"], ["What", "the", "ghost"]];
for(var i=0; i<arr.length; i++)
for(var j=0; j<arr[i].length; j++)
document.write(arr[i][j] + " ");
</script>
输出结果:什 么 鬼 What the ghost
/*二维数组的转置,把整齐的数组矩阵(每一行的元素个数一样)
1 1 1
2 2 2
3 3 3
4 4 4
转置 */
<script>
var arr1 = [[1, 1, 1], [2, 2, 2], [3, 3, 3], [4, 4, 4]];
//输出原始矩阵
for(var i=0; i<arr1.length; i++)
{
for(var j=0; j<arr1[i].length; j++)
document.write(arr1[i][j] + " ");
document.write("<br/>");
}
var arr2 = []; //用来存储转置后的数组,必须先分配空间,用new Array()是一样的
for(i=0; i<arr1[0].length; i++)
arr2[i] = []; //同上,必须先分配空间不然在下个循环中赋值会失败
//在此中转置赋值
for(i=0; i<arr1.length; i++)
{
for(j=0; j<arr1[i].length; j++)
arr2[j][i] = arr1[i][j];
}
//遍历输出转置后的矩阵
for(i=0; i<arr2.length; i++)
{
for(j=0; j<arr2[i].length; j++)
document.write(arr2[i][j] + " ");
document.write("<br/>");
}
</script>
输出结果:
1 1 1
2 2 2
3 3 3
4 4 4
1 2 3 4
1 2 3 4
1 2 3 4
/*数组元素倒序*/
<script>
var arr = [];
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
for(var i=0; i<arr.length; i++)
document.write(arr[i] + " "); //输出1 2 3
document.write("<br/>");
arr.reverse(); //把数组内元素次序颠倒
for(var i=0; i<arr.length; i++)
document.write(arr[i] + " "); //输出3 2 1
</script>