整塊看不懂,求詳細(xì)講解,謝謝
var sourceArr = sorceStr.split(";");
? //document.write(sourceArr);//test
? ?//從數(shù)組中將成績(jī)撮出來(lái),然后求和取整,并輸出。
? ?var score = new Array();
? ?var sum = 0;
? ?for (var i = 0; i < sourceArr.length; i ++) {
? ? ? ?sum += parseInt(sourceArr[i].substr(sourceArr[i].indexOf(":")+1));
? ? ? ?//document.write("<br>" + sum);//test
? ?}
? ?document.write("--班級(jí)總分為:" + sum);
? ?document.write(",班級(jí)平均分為(保留整數(shù)):" + Math.round(sum/sourceArr.length))
2017-01-06
2017-01-03
不難,啊,比如這段,
通過(guò)split方法,“;”這個(gè)是分割號(hào),就是從那里開(kāi)始切割這個(gè)字符串,將所有人的成績(jī)分開(kāi),然后存入sourceArr這的數(shù)組,
這個(gè)應(yīng)該也不難吧,創(chuàng)建一個(gè)數(shù)組,對(duì)吧
創(chuàng)建一個(gè)變量。給一個(gè)初始值“0”
首先想想,怎樣計(jì)算平均值了,是不是要所有成績(jī),然后在除以個(gè)數(shù),就是平均值啊,但是,看看上文,就是這個(gè)數(shù)組 ? var sourceArr = sorceStr.split(";");我們是不是把數(shù)據(jù)都放進(jìn)去了,要想獲取每一個(gè)數(shù)據(jù),這個(gè)時(shí)候我們就需要使用循環(huán),for,首先你得知道怎么使用循環(huán),循環(huán)for(里面有三個(gè)參數(shù),第一個(gè)是初始值,第二循環(huán)次數(shù),第三個(gè)增量),首先,從第一個(gè)數(shù)據(jù)開(kāi)始,i=0;初始數(shù)據(jù),第二數(shù)據(jù),循環(huán)的次數(shù),這個(gè)取決于成績(jī)的數(shù)量,有多少個(gè)成績(jī)了,sourceArr.length,這個(gè)的意思就是這個(gè)數(shù)組的長(zhǎng)度,里面有多少個(gè)數(shù)據(jù),i++,這個(gè)就是增量了,每次循環(huán)數(shù)據(jù)肯定都不一樣,所以這個(gè)增量就起到改變數(shù)據(jù)的作用,
然后是這一段, +=這個(gè)是什么意思了,就是累加,將本身的值+其他值,重新賦值給本身,這個(gè) 可以去看看js的符號(hào),parseInt表示轉(zhuǎn)換成數(shù)字類型,sourceArr[i],這種表示方式是通過(guò)數(shù)組下標(biāo)獲取數(shù)組的某個(gè)值,substr是截取字段,獲取某一段指定第幾個(gè)到最后的數(shù)據(jù),詳細(xì)的看參考http://www.runoob.com/jsref/jsref-substr.html? 。.indexOf(":")這個(gè)是獲取查詢?cè)厥謨?cè)出現(xiàn)的位置,詳細(xì)的看參考?http://www.runoob.com/jsref/jsref-indexof-array.html? 。indexOf(":")+1然后這里為啥要+1,這個(gè)就和substr這個(gè)方法,截取的方式有關(guān)了。