javscript练习(三)
求圆的面积
(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));
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>
javscript练习(三)的更多相关文章
- Javscript轮播 支持平滑和渐隐两种效果(可以只有两张图)
原文:Javscript轮播 支持平滑和渐隐两种效果(可以只有两张图) 先上两种轮播效果:渐隐和移动 效果一:渐隐 1 2 3 4 效果二:移动 1 2 3 4 接下来,我们来大致说下整个轮播的思 ...
- webkit技术内幕读书笔记 (二、三)
可视区和网页 通常网页比屏幕的可视区面积要大,因此当网页内容在可视区中放不下时,一般浏览器会提供滚动条. 从URL到构建完DOM树的过程 当用户输入网页URL的时候,WebKit调用其资源加载器加载该 ...
- 常用 Gulp 插件汇总 —— 基于 Gulp 的前端集成解决方案(三)
前两篇文章讨论了 Gulp 的安装部署及基本概念,借助于 Gulp 强大的 插件生态 可以完成很多常见的和不常见的任务.本文主要汇总常用的 Gulp 插件及其基本使用,需要读者对 Gulp 有一个基本 ...
- 【原】FMDB源码阅读(三)
[原]FMDB源码阅读(三) 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 FMDB比较优秀的地方就在于对多线程的处理.所以这一篇主要是研究FMDB的多线程处理的实现.而 ...
- Jquery的点击事件,三句代码完成全选事件
先来看一下Js和Jquery的点击事件 举两个简单的例子 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&q ...
- node.js学习(三)简单的node程序&&模块简单使用&&commonJS规范&&深入理解模块原理
一.一个简单的node程序 1.新建一个txt文件 2.修改后缀 修改之后会弹出这个,点击"是" 3.运行test.js 源文件 使用node.js运行之后的. 如果该路径下没有该 ...
- 简谈百度坐标反转至WGS84的三种思路
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 基于百度地图进行数据展示是目前项目中常见场景,但是因为百度地图 ...
- 一起学 Java(三) 集合框架、数据结构、泛型
一.Java 集合框架 集合框架是一个用来代表和操纵集合的统一架构.所有的集合框架都包含如下内容: 接口:是代表集合的抽象数据类型.接口允许集合独立操纵其代表的细节.在面向对象的语言,接口通常形成一个 ...
- 谈谈一些有趣的CSS题目(三)-- 层叠顺序与堆栈上下文知多少
开本系列,讨论一些有趣的 CSS 题目,抛开实用性而言,一些题目为了拓宽一下解决问题的思路,此外,涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题中有你感觉 ...
随机推荐
- Cisco Smart Install远程命令执行漏洞
0x01前言 在Smart Install Client代码中发现了基于堆栈的缓冲区溢出漏洞,该漏洞攻击者无需身份验证登录即可远程执行任意代码.cisco Smart Install是一种“即插即用” ...
- 【recording】gdoi2018
怎么说..虽然感觉其实..不太想写游记.. 但是回来看着桌面上的课本还是忍不住了(想想班里进度就..qwq)还是写一下吧 Day x(x<0) 之前大家溜到首都开心集训了一波然后被虐的很开心.. ...
- poj1284 Primitive Roots
Primitive Roots Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 4775 Accepted: 2827 D ...
- cpu的核数
相信大多数的人都知道CPU区分单核.双核.四核.六核.八核等,一些电脑小白肯定认为核心越多肯定性能越强,但是不少装机用户发现,有的CPU型号虽然是双核,但是要比一些四核还要贵,很多人感到迷惑,那么 ...
- wx.request 获取不到post传递的值
微信小程序的wx.request请求,method设为POST并向后台传递数据,但从后台返回的信息来看后台并没有获得传递的数据 wx.request({ url: 'url' ...
- Scratch编程小案例:愤怒的小牛
愤怒的小鸟曾经很热门,网上还说他是程序员最喜欢玩的游戏.最先我是WIKIOI的评测页面看到他的,后来在2014年全国信息学奥林匹克联赛第一天第三题飞扬的小鸟也看到了它.因此,突然想做一个类似愤怒的小鸟 ...
- CSS3实现文本垂直排列
最近的一个项目中要使文字垂直排列,也就是运用了CSS的writing-mode属性. writing-mode最初时ie中支持的一个属性,后来在CSS3中增添了这一新的属性,所以在ie中和其他浏览器中 ...
- java-jdbc-mysql:实现数据库表的增删改查
以数据库test下数据表student(sno,sname,ssex,sage,sdept)为例: student表中的已有的所有记录:
- CSS中filter滤镜的学习笔记
1.CSS静态滤镜样式 (filter)(只有IE4.0以上支持) CSS静态滤镜样式的使用方法:{ filter : filtername( parameters1, parameters2, . ...
- JavaScript计时器
计时器 基本格式: setInterval(function(){代码},1000): /* 说明:1.setInterval 会返回一个计时器ID值 可以这样接收.var setId = setIn ...