codewars--js--Human Readable Time—Math对象,parseInt()
问题描述:
Write a function, which takes a non-negative integer (seconds) as input and returns the time in a human-readable format (HH:MM:SS)
HH= hours, padded to 2 digits, range: 00 - 99MM= minutes, padded to 2 digits, range: 00 - 59SS= seconds, padded to 2 digits, range: 00 - 59
The maximum time never exceeds 359999 (99:59:59)
You can find some examples in the test fixtures.
我的答案:
function humanReadable(seconds) {
// TODO
var HH=0;MM=0;SS=0;
if(seconds>359999){return false;}
HH=parseInt(seconds/3600);
MM=parseInt((seconds-HH*3600)/60);
SS=parseInt((seconds-HH*3600)%60);
HH=(HH<10)?"0"+HH:HH;
MM=(MM<10)?"0"+MM:MM;
SS=(SS<10)?"0"+SS:SS;
return (HH+":"+MM+":"+SS).toString();
}
优秀答案:
function humanReadable(seconds) {
var pad = function(x) { return (x < 10) ? "0"+x : x; }
return pad(parseInt(seconds / (60*60))) + ":" +
pad(parseInt(seconds / 60 % 60)) + ":" +
pad(seconds % 60)
}
js取整取余
http://www.jb51.net/article/50005.htm
| 方法 | 含义 | 结果 |
| parseInt(5/2); | 丢弃小数部分,保留整数部分 | 2 |
| Math.ceil(5/2); | 向上取整,有小数就整数部分+1 | 3 |
| Math.round(5/2); | 四舍五入 | 3 |
| Math.floor(5/2); | 向下取整 | 2 |
1,转换函数(对String类型有效,否则就是NoN)
parseInt() //把字符串转换成整数
parseInt("123blue"); //return 123
parseInt("22.5"); //return 22
parseFloat() //把字符串转换成浮点数
parseFloat("1234blue"); //return 1234.0
parseFloat("22.5"); //return 22.5
2,强制类型转换
Boolean(value)----把给定的值转换成Boolean型
当要转换的值是至少有一个字符的字符串、非0数字或对象(下一节将讨论这一点)时,Boolean()函数将返回true。如果该值是空字符串、数字0、undefined或null,它将返回false。
Number(value)----把给定的值转换成数字(可以是整数或浮点数)
String(value) ----把给定的值转成字符串
3,js的弱类型转换(只进行算术运算,实现了字符串到数字的类型转换)
var str="012.345";
x=x*1; // return 数字12.345
4,其他常用的Math对象的方法
Math.abs(-1); // 1
Math.log(1); 以e为底的对数,0
Math.max(1,2,3); //3
Math.min(1,23); //1
Math.random(); //返回0~1之间的随机数
Math.pow(2,3); //2的3次方为8
2的3次方: 2**3;
2的5次方: 2**5;
Math.sqrt(9,3); //8的平方根 为2
codewars--js--Human Readable Time—Math对象,parseInt()的更多相关文章
- js入门篇之Math对象
Math对象用于执行数学任务 Math对象的属性: Math对象的方法: 常用属性和方法: Math.PI ----------------返回圆周率3.14 ... Math.ceil(x) --- ...
- js中的函数,Date对象,Math对象和数组对象
函数就是完成某个功能的一组语句,js中的函数由关键字 function + 函数名 + 一组参数定义;函数在定义后可以被重复调用,通常将常用的功能写成一个函数,利用函数可以使代码的组织结构更多清晰. ...
- js中Math对象常用的属性和方法
1 Math对象 1.1定义:Math是js的一个内置对象,它提供了一些数学方法. 1.2特性:不能用构造函数的方式创建,无法初始化,只有静态属性和方法 1.3静态属性 1.3.1 Math.PI 圆 ...
- JavaScript (六) js的基本语法 - - - Math 及 Date对象、String对象、Array对象
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 一.Math 1.Math对象的案例 var result= Math.max(10,20,30,40) ...
- #9.6课堂JS总结#变量作用域 date()对象 math()对象
一.变量的作用域 1.JavaScript的作用域链 首先看下下面这段代码: <script type="text/javascript"> var rain = 1; ...
- JS学习笔记10之Math对象
-->Math对象 常用属性和方法-->使用Math对象制作相应的效果 Math对象用于执行数学任务 一.Math对象的属性: 二.Math对象的方法: 三.常用属性和方法: Math.P ...
- 原生JS:Math对象详解
Math对象 本文参考MDN做的详细整理,方便大家参考MDN Math 也是一个内置对象, 为数学常量和数学函数提供了属性和方法,而不是一个函数对象. 与其它全局对象不同的是, Math 不是一个构造 ...
- JS Math对象中一些小技巧
JS中快速获取数组中最大/最小值 var a=[1,2,3,5]; alert(Math.max.apply(Math, a));//最大值 alert(Math.min.apply(Math, a) ...
- JavaScript基础14——js的Math对象
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
随机推荐
- ORM基础4 跨表查询+原子性操作
一.跨表查询 1.# # 正向查找 对象查找 # book_obj = models.Book.objects.get(id=3) # print(book_obj) # ret = book_obj ...
- 7.JavaSE之类型转换
类型转换: 由于Java是强类型语言,所以要进行运算的时候,需要用到类型转换. 图中优先级从低到高,小数优先级大于整数. 运算中,不同类型的数据需要转换为同一类型,然后进行运算. 强制类型转换:(类型 ...
- Java入门 - 语言基础 - 18.正则表达式
原文地址:http://www.work100.net/training/java-regular-expression.html 更多教程:光束云 - 免费课程 正则表达式 序号 文内章节 视频 1 ...
- 关于SpringDataJpa中测试出现StackOverflowError错误问题
在使用SpringDataJpa进行多表查询时,使用导航查询,每次都出现 StackOverflowError错误, 经过查找资料,网上百度,终于找到原因, StackOverflowError 是栈 ...
- # 团队项目-Beta冲刺2(七个小矮人)
团队项目-Beta冲刺2(七个小矮人) 一.格式描述 这个作业属于哪个课程 https://edu.cnblogs.com/campus/xnsy/GeographicInformationScien ...
- Python和JS实现的Web SSH工具webssh,牛逼
这个工具是使用Python开发,可以从下面地址了解详情. 官网:https://pypi.org/project/webssh/ webssh这个工具可以干啥: 在linux机器上安装python环境 ...
- 透过现象看webpack处理css文件中图片路径转换的具体过程
webpack是目前使用比较流行的一个前端模块打包器,前端的任何资源都被当成一个模块来处理,如图片.css文件等等.在基于webpack构建的前端项目中,一般都会配置有关css文件处理的规则,这其中也 ...
- SQL Server 常用的数据类型
1. 字符串数据类型 char 此数据类型可存储1~8000个定长字符串,字符串长度在创建时指定:如未指定,默认为char(1).每个字符占用1byte存储空间. nchar ...
- 【译】Serilog 配置基础知识
Serilog 使用简单的C# API来配置日志记录.当外部配置需要时,可以使用Serilog.Settings.AppSettings包(.NET 框架)或Serilog.Settings.Conf ...
- nginx+lua在我司的实践
导读:nginx是一个高性能的反向代理服务器,lua是一个小巧的脚本语言,这两个的巧妙结合会擦出怎样的火花呢. 关键词:nginx,lua,nginx+lua 前言 nginx,lua,nginx+l ...