javascript 练习示例(一)
confirm 点确定返回true,点取消返回false
prompt 点确定返回用户输入的字符串,点取消返回null
判断奇偶性
var isOdd = prompt('请输入你得的数字');
if(isNaN(isOdd)){
alert('你输入的是非数字');
}else if(!(isOdd % 2)){
alert('你输入的是偶数');
}else{
alert('你输入的是奇数');
用位运算
function assert(n) {
if (n & 1) {
console.log("n是奇数");
} else {
console.log("n是偶数");
}
}
assert(3); // "n是奇数"
判断是否闰年
满足下面两个条件之一
- 普通年能被4整除且不能被100整除的为闰年.
- 世纪年能被400整除的是闰年
var isRunnian = prompt('请输入一个年份');
if(isNaN(runnian)){
alert('请输入数字');
}else if((isRunnian % 4 == 0 && isRunnian % 100 != 0) || isRunnian % 400 == 0 ){
alert(isRunnian + '是闰年');
}else{
alert('不是闰年');
}
克托莱指数
身体质量指数 (Body Mass Index, 简称BMI), 亦称克托莱指数, 是目前国际上常用的衡量人体胖瘦程度以及是否健康的一个标准。BMI 值超标,意味着你必须减肥了。
var weight, height;
var weight = prompt('请输入你的体重(kg):');
var height = prompt('请输入你的身高(m)');
var result = weight / (height * height);
result <= 20 && alert('偏瘦:' + result);
result >= 25 && alert('偏胖:' + result);
(result >= 20 && result <= 25) && alert('标准身材:' + result);
交换两个变量的值
不借助第三变量,交换两个数字的位置
var num1, num2, temp;
temp = num1;
num1 = num2;
num2 = temp;
num1 = 5, num2 = 8;
num1 = num1 ^ num2;
num2 = num1 ^ num2;
num1 = num1 ^ num2;
num1 = 8, num2 =5; num1 ^= num2;
num2 ^= num1;
num1 ^= num2;
输入三个数字,输出最大值
function max(num1, num2, num3){
var isMax = num1;
isMax = isMax > num2 ? isMax : num2;
isMax = isMax > num3 ? isMax : num3;
return isMax;
}
//使用位运算
function max(num1, num2, num3){
var isMax;
isMax = num1 > num2 ? (num1 ^= num2, num2 ^= num1, num1 ^= num2) : num2;
isMax = num3 > isMax ? (isMax ^= num3, num3 ^= isMax, isMax ^= num3) : isMax;
return isMax;
}
三个数字实现排序输出,从小到大
function getSort(x, y, z){
x > y && (x ^= y, y ^= x, x ^= y); //y比x大
y > z && (y ^= z, z ^= y, y ^= z); //z比y大
x > y && (x ^= y, y ^= x, x ^= y);
console.log(z, y , x)
}
输入年月日,判断该月有什么天
1,3,5,7,8,10,12 :31天
4,6,9,11 :30天
2: 闰年29天 平年28天
function isDay(){
var year = prompt('请输入年份');
var month = prompt('请输入月份');
var day;
switch (parseInt(month)){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12: alert(year + '年份' + month + '月份' + '有31天'); break;
case 2:
if(year % 4 ==0 && year %100 !=0 || year % 400 == 0){
alert(year + '年份' + month + '月份' + '有29天'); break;
}else{
alert(year + '年份' + month + '月份' + '有28天'); break;
}
case 4:
case 6:
case 9:
case 11: alert(year + '年份' + month + '月份' + '有30天'); break;
default: alert('你的输入有误');
}
}
用户输入自己的生日,判断生日是当年的第?天
calDate()
function calDate(){
var y = prompt('请输入年份');
var m = prompt('请输入月份');
var d = prompt('请输入日期');
var totalDays = 0;
switch (m - 1){
case 11:
totalDays += 30;
case 10:
totalDays += 31;
case 9:
totalDays += 30;
case 8:
totalDays += 31;
case 7:
totalDays += 31;
case 6:
totalDays += 30;
case 5:
totalDays += 31;
case 4:
totalDays += 30;
case 3:
totalDays += 31;
case 2:
if(y % 4 ==0 && y %100 !=0 || y % 400 == 0){
totalDays += 29;
}else{
totalDays += 28;
}
case 1:
totalDays += 31;
}
totalDays += parseInt(d);
alert('生日在当年的第' + totalDays + '天');
}
javascript 练习示例(一)的更多相关文章
- JavaScript闭包示例
在下面的例子中,为什么点击所有的段落p输出都是5,而不是alert出对应的0,1,2,3,4. <html> <head> <meta charset="utf ...
- javascript prompt示例
<html lang="en"> <head> <title>Date example</title> <script t ...
- Clean Code之JavaScript代码示例
译者按: 简洁的代码可以避免写出过多的BUG. 原文: JavaScript Clean Code - Best Practices 译者: Fundebug 本文采用意译,版权归原作者所有 引文 作 ...
- Javascript基础示例:用JS写简易版贪吃蛇(面向对象)
废话不多说,代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> & ...
- Javascript 综合示例 网页扫雷游戏
---------------认定了的事情,只要是对的,干到底! ------------------------------------------------------------------- ...
- 一个简单的Javascript闭包示例
//=====用闭包实现函数的Curry化===== //数字求和函数的函数生成器 function addGenerator( num ){ //返回一个简单的匿名函数,求两个数的和,其中第一个数字 ...
- 将百度坐标转换的javascript api官方示例改写成传统的回调函数形式
改写前: 百度地图中坐标转换的JavaScript API示例官方示例如下: var points = [new BMap.Point(116.3786889372559,39.90762965106 ...
- Dynamics 365 Customer Engagement中使用JavaScript和C#调用操作Action示例
微软动态CRM专家罗勇 ,回复334或者20190509可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me! Action (操作)是流程的一种,可以在工作流中调用,可以使用 ...
- OVGap iOS与Javascript交互(H5与原生APP交互)
源代码:https://github.com/windshg/OVGap OVGap:一个轻量级的类库,能够让iOS应用和远程网页的 Javascript 代码进行通信,也就是说,远程的 Javasc ...
随机推荐
- FastClick 填坑及源码解析
最近产品妹子提出了一个体验issue —— 用 iOS 在手Q阅读书友交流区发表书评时,光标点击总是不好定位到正确的位置: 如上图,具体表现是较快点击时,光标总会跳到 textarea 内容的尾部.只 ...
- 巧用 mask-image 实现简单进度加载界面
最近给 nzoo 折腾官网,拿 angular2.0 + webpack 实现SPA,然后觉得最终打包后的出口文件有点大,用户首次访问会有一个时间较长的白屏等候界面,感觉体验不太好. 于是希望在用户下 ...
- Unity AssetBundle爬坑手记
这篇文章从AssetBundle的打包,使用,管理以及内存占用各个方面进行了比较全面的分析,对AssetBundle使用过程中的一些坑进行填补指引以及喷! AssetBundle是Unity推荐的 ...
- 实现了一个百度首页的彩蛋——CSS3 Animation简介
在百度搜索中有这样一个彩蛋:搜索“旋转”,“跳跃”,“反转”等词语,会出现相应的动画效果(搜索“反转”后的效果).查看源码可以发现,这些效果正是通过CSS3的animation属性实现的. 实现这个彩 ...
- 自定义Sublime Text的图标
sublime text很赞,windows上最接近mac逼格的轻量编辑器,对于我这样比较喜欢格调的人来说,简直不二之选啊. 美中不足的是,看久了觉得它的图标似乎不是很上心.现在都流行扁平化了而它还停 ...
- 用java开发微信公众号:接收和被动回复普通消息(三)
上篇说完了如何接入微信公众号,本文说一下微信公众号的最基本功能:普通消息的接收和回复.说到普通消息,那么什么是微信公众号所定义的普通消息呢,微信开发者文档中提到的接收的普通消息包括如下几类: 1.文本 ...
- spring各jar包作用(转载)
除了spring.jar文件,Spring还包括有其它13个独立的jar包,各自包含着对应的Spring组件,用户可以根据自己的需要来选择组合自己的jar包,而不必引入整个spring.jar的所有 ...
- 阿里云ECS安装lnmp环境-转载自:http://ninghao.net/blog/1368
远程控制你的服务器 远程控制 Linux 类型的系统的服务器,比如 CentOS 系统的服务器,一般不像 Windows 服务器那样,使用图形界面的远程控制.我们需要使用命令行工具,远程连接到服务器, ...
- 用VB脚本批到导入字段到PowerDesigner
在PowerDesigner使用脚本批量导入excel中记录的表结构信息,由于需要通过powerdesigner逆向工程创建一些sybase IQ的表,由于是接口数据,只有excel表,手动导入太耗时 ...
- ASP.NET MVC系列:Area
1. Area简介 ASP.NET MVC Area机制构建项目,可以将相对独立的功能模块切割划分,降低项目的耦合度. 2. Area设置Routing 新建Admin Area后,自动创建Admin ...