编写一个函数,计算两个数字的和差积商
function calculator(num1,num2,sign){
switch(sign){
case "+" : console.log(num1+num2); break;
case "-" : console.log(num1-num2); break;
case "*" : console.log(num1*num2); break;
case "/" : console.log(num1/num2); break;
}
}
求圆的面积
(function circle_area(a){//传入圆的半径 console.log( Math.PI*Math.pow(a,2) ); })(2);
编写函数,判断一个字符串的内容是不是纯数字
(function if_num(a){//传入圆的半径 if(!isNaN(Number(a))) console.log(a+":是纯数字"); else console.log(a+": 不是纯数字"); })("121.1221");
(function if_num(a){//传入圆的半径 (!isNaN(Number(a))&&!(console.log(a+":是纯数字")))||(console.log(a+": 不是纯数字")); })("121.12");
编写一个函数,计算三个数字的大小,按从小到大的顺序输出。
(function arr_sort(arr){//冒泡排序,参数为一个数组 var tmp; for(var i=0;i<arr.length-1;i++) for(var j=0;j<arr.length-i-1;j++){ if(arr[j]>arr[j+1]){ tmp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=tmp; } } for(var k in arr) console.log(arr[k]); })([12,1,33,432]);
编写一个函数,在页面上输出一个N行M列的表格,表格内容填充1~100的随机数字
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style> table{border:1px solid #666;border-spacing:0;border-collapse:collapse;text-align:center;} td{border:1px solid #999;height:20px;width:20px;} tr{border:none;} </style> </head> <body> <label>请输入行:<input type="text" /></label> <label>请输入列:<input type="text" /></label> <input id="active" type="button" value="生成表格"/> <div id="div_"> </div> </body> <script> document.getElementById('active').onclick=function(){ var n=document.getElementsByTagName("input")[0].value; var m=document.getElementsByTagName("input")[1].value; var html_=""; for(var i=0;i<n;i++){ html_+="<table><tr>"; for(var j=0;j<m;j++){ html_+="<td>"+parseInt(Math.random()*100)+"</td>"; } html_+="</tr></table>"; } document.getElementById("div_").innerHTML=html_; }; </script> </html>
求最大公约数,辗转相除法(递归)
(function cal(m,n){ if(n==0){ console.log(m); return; }else{ var r=m%n; m=n; n=r; return cal(m,n); } })(3,9);
function cal(x,y){ function cal_(x,y){ if(x%2==0&&y%2==0){ x/=2; y/=2; cal_(x,y); } } var z=x>y?x-y:y-x; return z==(x>y?y:x)?z:cal(z,(x>y?y:x)); } console.log(cal(42,49));
编写一个函数,生成4位数字的验证码
function checkcode(){
var num = parseInt(Math.random()*9000) + 1000;
return num;
}
function checkcode(){
var num = 0;
do{
num = parseInt(Math.random()*10000);
} while( num < 1000);
return num;
}
求m-n之间数字的和
function sum(m,n){
var sum = 0;
if(m>n){
for(var i=n; i<=m; i++){
sum += i;
}
} else {
for(var i=m; i<=n; i++){
sum += i;
}
}
return sum;
}
编写函数digit(num, k),函数功能是:求整数num从右边开始的第k位数字的值,如果num位数不足k位则返回0。
function digit(num,k){
var knum = 0;
for(var i=1; i<=k; i++){
knum = num%10;
num = parseInt(num/10);
}
return knum;
}
编写函数计算一个数字的长度
function getLength(num){
var count = 0;
while(num != 0){
num = parseInt(num/10);
count++;
}
return count;
}
function getLength(num){
return num.toString().length;
}
编写一个函数,计算任意两个数字之间所能组成的奇数个数,数字必须是个位数。
比如:计算0~3之间能组成的奇数是: 01、03、13、21、23、31
function get(m,n){
var count = 0;
for(var i=n; i<=m; i++){
for(var j=n; j<=m; j++){
if(i==j) continue;
if( (i*10+j)%2 != 0 ){
console.log(i*10+j);
count++;
}
}
}
return count;
}
某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,
加密规则如下:每位数字都加上5,然后用除以10的余数代替该数字,再将第一位和第四位交换,
第二位和第三位交换,请编写一个函数,传入原文,输出密文
function hash(num){
var n1 = (num%10+5)%10;
var n2 = (parseInt(num%100/10)+5)%10;
var n3 = (parseInt(num%1000/100)+5)%10;
var n4 = (parseInt(num/1000)+5)%10;
return n1*1000+n2*100+n3*10+n4;
}
编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数求1/1+1/3+...+1/n
function cal(n){ console.log(n%2==0?even(n):odd(n)); function odd(n){ return n==1?1:(1/n+odd(n-2)); } function even(n){ return n==2?1/2:(1/n+even(n-2)); } }
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style> .box{width:500px;height:500px;background:#ccc;margin:50px auto;overflow:hidden;} p{font-size:20px;line-height:24px;padding-left:30px;line-height:24px;} .clear{zoom:1;} .clear:after{content:".";height:0;display:block;clear:both;visibility:hidden;} .box>div>div:first-child{background:blue;float:left;margin:30px;height:100px;width:200px;text-align:center;line-height:100px;} .box>div>div:nth-child(2){text-align:center;width:210px;float:right;height:100px;margin:30px 10px;background:#fff;} textarea{margin:30px;} div>div>div:after{content:".";display:inline-block;width:0;height:100%;vertical-align:middle;} span{display:inline-block;vertical-align:middle;} </style> </head> <body> <div class="box"> <p>请使用鼠标操作DIV触发事件</p> <div class="clear"> <div id="div_1">DIV</div> <div id="div_2"></div> </div> <p>请使用见胖操作输入框触发事件</p> <div class="clear"> <textarea rows="6" cols="25" scroll="scroll-y" id="text_area"></textarea> <div id="div_3"></div> </div> </div> </body> <script> document.getElementById("div_1").ondblclick=function(){ document.getElementById("div_2").innerHTML="<span>您刚刚双击了DIV,触发了ondblclick事件</span>"; }; document.getElementById("div_1").onclick=function(){ document.getElementById("div_2").innerHTML="<span>双击有惊喜!</span>"; }; document.getElementById("text_area").onchange=function(){ document.getElementById("div_3").innerHTML="<span>输入框内容被改变,触发了onchange事件</span>"; }; </script> </html>