js数组基本知识

1.数组的引出

js数组基本知识js数组基本知识js数组基本知识js数组基本知识

用数组解决王大爷养乌龟的问题:

var weights=[3,5,1,3.4,2,50];
var all_weight=0;
var avg_weight=0;
for (i=0;i<weights.length ;i++){
all_weight+=weights[i];
}
//假设想知道数据类型
//window.alert(avg_weight.constructor);
avg_weight=all_weight/weights.length;
document.writeln('乌龟的整体重是'+all_weight+" "+'平均体重是'+avg_weight.toFixed(2));

2.数组的细节

js数组基本知识js数组基本知识

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

数组在内存中的存在形式:

js数组基本知识

1)传递详细的值,不会更改

var myval=900;
function abc(val){
val=90;
}
abc(myval);
window.alert(myval);

执行图:

js数组基本知识

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

2)传递引用地址

var myarr=[456,50,90]
function abc2(arr){
arr[0]=35;
}
abc2(myarr);
window.alert(myarr);

执行图:

js数组基本知识

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

js数组基本知识

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

3)数组的引用

js数组基本知识

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

案例:

var a=[23,'hello',4.4,'ture'];
window.alert(a[3]);
window.alert(a[4]);

结论:不能訪问不存在的元素。数组下标是从0開始编号的。

4)js的数组能够动态增长

var a=[2,3];
alert('size='+a.length);
a[2]=56;//动态的增长
alert('size='+a.length);
window.alert(a[2]);

5)对字符串切割,生成一个字符串数组

js数组基本知识

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

var str="hello world abc 顺平";
var arr=str.split(" ");
for (i=0;i<arr.length ;i++ )
{
document.write(arr[i]+" ")
}
document.write('</br>')

var str="hello world abc 顺平";
document.write(str.split(" "));

js数组基本知识

上一篇:比较js中创建对象的几种方式


下一篇:安卓之生命周期