求数组最大值、求和、乘法表、取整

求数组的最大值

function findMax(){
   var max=0;
   for(var i=0;i<arguments.length;i++){
       if(arguments[i]>max){
          max=arguments[i];
       }
   }
   return max;          
}

 求和

function sun() {
    var sumAll = 0;
    for (var i = 0; i < arguments.length; i++) {
        sumAll += arguments[i]
    }
    return sumAll;
}

 九九乘法表

document.write("<table>"); //<table></table>添加一个表格样式来显示乘法表
for (var x = 1; x <= 9; x++) {
    document.write("<tr>"); //<tr></tr>标签
    for (var y = 1; y <= x; y++) {
        document.write("<td>" + y + "x" + x + "=" + y * x + "</td>"); //亦可用<th>标签来起到居中加粗内容的作用
    }
    document.write("</tr>");
}
document.write("</table>");

 取n~m之间的整数,要求:传递的参数不足两个或者不是有效数字,返回[0-1]之间的随机数,需要解决n和m两个数大小问题,如果m<n,两个参数的值进行交换

function get(n, m) {
    if ( !! n && !! m) {//确认传入两个参数
        if (n > m) {//判断当n>m的时候,比如get(30,3)就需要交换两个参数的值成为get(3,30)
            n = n + m;
            m = n - m;
            n = n - m;
            console.log(n + "..." + m)
        }
        return Math.floor(Math.random() * (m - n) + n);
/*举例:
当你传入20,60的时候,应该是取20~60之间的40位数,40位数就是这个范围,random()是取0~1之间任意数,0乘以40等于0,1乘以40等于1,random()*(m-n)的意思就是取0~40之间数,最后+n 现在n是20 加上20 就是取20~60之间的数*/
    } else {
        return Math.random();//判断当没有传入两个参数的时候,返回0~1之间的随机数
    }
}

 小Tips:

如何在不增加第三个变量的情况下交换两个变量的值:

1、先放在一起 在分开
a = a + b;
b = a - b;
a = a - b;

2、相减
a = a + b - (b = a)

3、相乘
b = a + (b = a)*0

4、相除
a = a * b;
b = a / b;
a = a / b;

5、异或,a^b会产生c,c^a会产生b,b^c会产生a
a = a^b;   
b = a^b; 

a = a^b; 

posted @ 2015-11-03 15:06  Mu薇  阅读(308)  评论(0编辑  收藏  举报