JavaScript(6)—— 返回特征数字
案例要求

根据业务情况,要把核心的东西变成一个模块便于复用,慢慢沉淀后,能够更快更高效地编程。
业务核心算法:
/*
数字检测
@return
返回2,能被3和7整除
返回1,能够被3整除
返回0,不能被3整除
@author Dev
Written in 2019.9
*/
function checkNum(number){
if(number % 21 == 0) return 2;
else if(number % 3 == 0) return 1;
return 0
}
业务逻辑代码:
/*
@return
返回符合条件的拼接结果,每十个一行;
illegal:
"unexpected number";
begin > end:
"the begin is greater than the end"
*/
function filterNum(begin, end){
var rst = '';
var cnt = 0;
//合法性判断:
if(isNaN(begin) || isNaN(end)) return "unexpected number";
if(begin>end) "the begin is greater than the end";
for(var i = begin ; i <= end; i++){
if(checkNum(i) == 0) continue;
rst += ("<span class='");
// 被3除
if(checkNum(i) == 1) rst += ("three ");
// 被两者除
else rst += ("twt-one ");
rst += ("'>"+ i +"</span>");
cnt ++;
if(cnt % 10 == 0 ) rst += '<br/>';
}
return rst;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<link rel="stylesheet" href="divide.css">
</head>
<body>
<label>请输入开始数字</label>
<input type="text" name="" id="begin">
<label>请输入结束数字</label>
<input type="text" name="" id="end">
<button id="smt">提交</button>
<hr>
<div id="result">
</div>
</body>
<script type="text/javascript" src="base.js"></script>
<script type="text/javascript" src="divide.js"></script>
</html>
divide.html
/* normal style */
span{
display: inline-block;
width: 100px;
text-align: center;
} /* Able to be divisible by three. */
.three{
color: blue;
font-weight: bold;
} /* Able to be divisible by 3 and 7 */
.twt-one{
color: yellow;
background-color: red;
}
divide.css
function $(id){
return document.getElementById(id);
}
function print(log){
console.log(log);
}
base.js
/*
数字检测
@return
返回2,能被3和7整除
返回1,能够被3整除
返回0,不能被3整除
@author Dev
Written in 2019.9
*/
function checkNum(number){
if(number % 21 == 0) return 2;
else if(number % 3 == 0) return 1;
return 0
}
/*
@return
返回符合条件的拼接结果,每十个一行;
number wrapper:
span
illegal:
"unexpected number";
begin > end:
"the begin is greater than the end"
*/
function filterNum(begin, end){
var rst = '';
var cnt = 0;
//合法性判断:
if(isNaN(begin) || isNaN(end)) return "unexpected number";
// 转成数值
begin = Number(begin), end = Number(end);
if(begin > end) return "the begin is greater than the end";
for(var i = begin ; i <= end; i++){
var num = checkNum(i);
if(num == 0) continue;
rst += ("<span class='");
// 被3除
if(num == 1) rst += ("three ");
// 被两者除
else rst += ("twt-one ");
rst += ("'>" + i + "</span>");
cnt ++;
if(cnt % 10 == 0 ) rst += '<br/>';
}
return rst;
}
/*
用户提交数据时触发
获取网页源数据,并在网页显示处理结果
*/
function onSubmit(){
var begin = $('begin').value;
var end = $("end").value;
var rst = $('result');
rst.innerHTML = filterNum(begin,end);
} // 设置点击事件函数
$('smt').onclick = onSubmit;
divide.js
JavaScript(6)—— 返回特征数字的更多相关文章
- java基础60 JavaScript字符串转换成数字(网页知识)
1.字符串转换成数字 <!doctype html> <html> <head> <meta charset="utf-8"> &l ...
- asp.net后台操作javascript:confirm返回值
在asp.net中使用confirm可以分为两种: 1.没有使用ajax,confirm会引起也面刷新 2.使用了ajax,不会刷新 A.没有使用ajax,可以用StringBuilder来完成. ( ...
- JavaScript判断是否是数字
JavaScript判断是否是数字的几种方法 isNaN() /** * 判断是否是数字 */ function isNumber(value){ if(isNaN(value)){ return f ...
- JavaScript 关于金额、数字验证的正则表达式
JavaScript 关于金额.数字验证的正则表达式 function ismoney(money) { var reg = /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^ ...
- JavaScript关于返回数据类型一个小小的笔记
Javascript关于返回数据类型的一个小笔记 javascript数据类型有两种. 一种是基本数据类型:String.Number.Boolean.Symbol.Underfine.Null 一种 ...
- JavaScript求两个数字之间所有数字的和
这是在fcc上的中级算法中的第一题,拉出来的原因并不是因为有什么好说的,而是我刚看时以为是求两个数字的和, 很显然错了.我感觉自己的文字理解能力被严重鄙视了- -.故拉出来折腾折腾. 要求: 给你一个 ...
- Odometer使用JavaScript和CSS制作数字滑动效果
Odometer是一个使用JavaScript和CSS技术,制作出数字上下滑动的动画效果插件,有点类似与我们的天然气的读数的动画效果,这个插件是轻量级的,压缩版本只有3kg,使用CSS3动画技术,所以 ...
- 使用Javascript实现返回顶部功能。
为了提高网站的浏览体验及友好度,相信大部分网站需要一个返回顶部的按钮,如果使用传统的a标记,再做一个div加上链接的话,非常麻烦,不仅每个页面都需要添加,而且不能实现非常智能的效果及简化维护时间. 下 ...
- 【JavaScript】日期和数字格式化
var date, number; /** * 让日期和时间按照指定的格式显示的方法 * @param date * @param formatString format 格式字符串 * @retur ...
随机推荐
- visual studio 和visual studio code 的区别是什么?
区别有三: 区别一:含义不一样. Visual Studio(简称VS)是美国微软公司的开发工具包系列产品,是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具.代码 ...
- Hosts 文件切换工具
建议删除无用的注释,否则在启用全部的时候会把注释和说明内容的注释取消掉 下载地址:
- Java实现从服务器下载文件到本地的工具类
话不多说,直接上代码...... import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServlet ...
- Java8-Stream-No.13
import java.security.SecureRandom; import java.util.Arrays; import java.util.stream.IntStream; publi ...
- 如何在 Google 地图中添加标记和说明
JS如下: (function() { window.onload = function() { // Creating an object literal containin ...
- joxj 模拟赛 2019年9月3日
比赛题目来源:2018qbxt合肥Day1 T1 最小公倍数 题意:已知正整数n,求n与246913578的最小公倍数,结果对1234567890取模 数据范围:1<=n<=1010000 ...
- Linux之动态库
命令规则 lib + 名字 + .so 制作步骤 1)生成与位置无关的代码(生成与位置无关的代码) 2)将.o打包成共享库(动态库) 发布和使用共享库 动态库运行原理: 生成动态库: gcc -fPI ...
- python 二分查找代码
二分查找的条件是必须是排好的数字 """二分查找""" def binary_searhc(arr, target): n = len(ar ...
- FreeMarker学习(内建函数参考)
内容参考:http://freemarker.foofun.cn/dgui_quickstart_basics.html 一.字符串内建函数 boolean: 字符串转为布尔值.字符串必须是 true ...
- 在windows系统搭建Flutter开发环境
开发环境搭建(Windows) 系统要求 设置FLutter镜像(非必须) 获取Flutter SDK Android开发环境设置 安装Flutter插件 系统要求 在Windows上要安装并运行Fl ...