1.数组的引出
用数组解决王大爷养乌龟的问题:
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.数组的细节
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
数组在内存中的存在形式:
1)传递详细的值,不会更改
var myval=900;
function abc(val){
val=90;
}
abc(myval);
window.alert(myval);
执行图:
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);
执行图:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
3)数组的引用
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)对字符串切割,生成一个字符串数组
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(" "));