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 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题中有你感觉 ...
随机推荐
- 20165218 2017-2018-2 《Java程序设计》课程总结
20165218 2017-2018-2 <Java程序设计>课程总结 一.每周作业链接汇总 20165218 我期望的师生关系 20165218 学习基础和C语言基础调查 2016521 ...
- [CF1087D]Minimum Diameter Tree
link 题目大意 有$n$个点的前边权为$0$的树,你要加入$S$边权总量,可以为分数,使得当前树的直径最小. 题目分析 题目过于毒瘤,导致于最后$1$个小时一直在做此题,没想到真的只是一个结论一样 ...
- Android开发-eclipse+phonegap(Cordova)环境搭建
搭建步骤: 一.安装java [官网下载].eclipse+ADT+Android SDK [点我下载x86(android-22)] | [adt-bundle-windows-x86_64-201 ...
- Hdu5181 numbers
numbers Time Limit: 12000/6000 MS (Java/Others) Memory Limit: 196608/196608 K (Java/Others)Total ...
- IO多路复用之epoll(二)
前一篇介绍了epoll的LT模式,LT模式注意epollout事件在数据全部写成功后需要取消关注, 或者更改为EPOLLIN. 而这次epoll的ET模式,要注意的是在读和写的过程中要在循环中写完或者 ...
- 深入分析Java中的 == 和equals
关于Java中的 == 和equals的解释请看这位博主的文章 :http://www.cnblogs.com/dolphin0520/p/3592500.html 以下是我对这篇文章的一些扩展. 对 ...
- powerdesigner中把表的描述复制到Name
'****************************************************************************** '* File: comment2nam ...
- jQuery常用插件大全
1.五星级插件jRating 详细文档介绍:http://www.myjqueryplugins.com/jquery-plugin/jrating 2.图片展示插件Swiper和Slider swi ...
- 1.java内存区域与内存溢出异常
1.java运行时数据区如图所示: 2.每个区域的功能 (1)程序计数器(寄存器) 当前线程所执行的字节码的行号指示器 为了线程切换后能够恢复到正确的执行位置,因此每个线程拥有自己独立的程序计数器 如 ...
- LightOJ 1065 - Number Sequence 矩阵快速幂水题
http://www.lightoj.com/volume_showproblem.php?problem=1065 题意:给出递推式f(0) = a, f(1) = b, f(n) = f(n - ...