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 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题中有你感觉 ...
随机推荐
- centos 6.5 web service模式 系统 安装php
1 首先是坚持libxml2出问题,提示如下: checking for xml2-config path... /home/www/thirdlib/libxml2/bin/xml2-configc ...
- python基础----析构函数__del__
析构方法,当对象在内存中被释放时,自动触发执行. 注:此方法一般无须定义,因为Python是一门高级语言,程序员在使用时无需关心内存的分配和释放,因为此工作都是交给Python解释器来执行,所以,析构 ...
- static_cast 和 dynamic_cast
1.static_cast static_cast < type-id > ( expression ) 该运算符把expression转换为type-id类型,但没有运行时类型检查来保证 ...
- laravel调试神器tinker
一直以来,想调试框架中的某些东西,如想知道 Elpquent 的 create 方法返回值是个什么东西, 以前的话,应该就是在 create 方法调用之后,使用 dd 或者 var_dump 之类的函 ...
- 「Python」人脸识别应用
人脸识别主要步骤: face_recognition 库的安装 安装此库,首先需要安装编译dlib,此处我们偷个懒,安装软件Anaconda(大牛绕过),此软件预装了dlib. 安装好后,我们直接通过 ...
- [Java多线程]-ThreadLocal源码及原理的深入分析
ThreadLocal<T>类:以空间换时间提供一种多线程更快捷访问变量的方式.这种方式不存在竞争,所以也不存在并发的安全性问题. //-------------------------- ...
- js 30分钟倒计时
<html> <head> <meta charset="UTF-8"> <title></title> </he ...
- Lucene 查询分页技术
常用的Lucene查询代码如下所示,该代码的作用是将path路径下的所有索引信息返回 public String matchAll(String path) { try { Directory dir ...
- 解决VS Code编译调试中文输出乱码
最近尝试用VS Code配置了C和C++的编译调试环境,结果遇到了中文输出乱码问题,查阅网上竟然还没有相关问题,有怀疑是mingw中文支持问题,但最后证明是VS Code编码问题. 解决方案: 文件- ...
- 4.redis设计与实现--跳跃表
1.跳跃表由两个结构体构成: 2.总结: