JavaScript小函数(二)
判断n是不是正整数若是整数求和。
函数f(n)(这是小学生与大学生的区别)
我的:
function f(number){
var sum = 0;
if (parseInt(number)!= number ){
return false;
}else if(number == '')
{
return false;
}else if(number <0 ){
return false;
}
else
{for(var i=1;i<=number;i++){
sum = sum + i;
}
return sum;
}
};
var sum = 0;
if (parseInt(number)!= number ){
return false;
}else if(number == '')
{
return false;
}else if(number <0 ){
return false;
}
else
{for(var i=1;i<=number;i++){
sum = sum + i;
}
return sum;
}
};
人家的:
function f(n)
{ return (parseInt(n) === n && n > 0) ? n*(n+1)/2 : false; }; // ==在比较的时候可以转换数据类型,===严格比较,只要类型不匹配就返回flase
function f(n)
{ return Number.isInteger(n) && n > 0 ? n * (n + 1) / 2 : false; };
function f(n)
{
if(typeof n != 'number' || n <= 0 || Math.floor(n) != n)
return false;
return n * (n + 1) / 2;
};
function f(n)
{
if(isNaN(n) || n <= 0 || ~~n !== n)
return false;
var x = 0;
while(n>0)
{ x += n; n--; }
return x;
};