JavaScript里处理数字的一些常用方法
1.toString() 把字符串转换为数值。
let num = 123;
console.log(typeof(num)); //number
console.log(typeof(num.toString())) //string
- typeof() 判断数据类型
2.toLocaleString() 方法可把一个 Number 对象转换为本地格式的字符串。
LocaleString()会根据你机器的本地环境来返回字符串,它和toString()返回的值在不同的本地环境下使用的符号可能变化;
var a = 6666;
a.toLocaleString();
// "6,666"
a.toString();
//"6666"
var dt = new Date();
console.log(dt.toLocaleString());
//2019/9/11 下午4:46:04
console.log(dt.toString());
//Wed Sep 11 2019 16:46:04 GMT+0800
3.toFixed() 返回字符串值,它包含了指定位数小数的数字。
let num1 = 3.1415;
console.log(num1.toFixed(0)); //
console.log(num1.toFixed(1)); // 3.1
console.log(num1.toFixed(2)); // 3.14
console.log(num1.toFixed(5)); // 3.14150
- toFixed(2) 非常适合处理金钱。
4.Number() 可用于把 JavaScript 变量转换为数值。
Number(true); //
Number(false); //0
let x = new Date();
console.log(Number(x)); // 1568186258917 时间戳 Number() 方法返回 1970 年 1 月 1 日至今的毫秒数
console.log(Number(new Date("2019-09-11"))); // 1568186258917 时间戳 Number() 还可以把日期转换为数字: Number('12'); // 12 数字类型
Number(11 22); // NaN
Number(undefined); //NaN
特殊情况 因为空字符串、null 和0都是false
Number(null) ;//0;
Number(''); //0;
5.parseInt() 解析一段字符串,并返回一个整数。(取整)
parseInt("10"); // 返回 10
parseInt("10.33"); // 返回 10
parseInt("10 20 30"); // 返回 10
parseInt("10 years"); // 返回 10
parseInt("years 10"); // 返回 NaN 如果无法转换为数值,则返回 NaN (Not a Number)
6.parseFloat()解析一个字符串,并返回一个浮点数。
- parseFloat() 解析一段字符串并返回数值。允许空格。只返回首个数字
- 如果无法转换为数值,则返回 NaN (Not a Numbe)
parseFloat("10"); // 返回 10
parseFloat("10.33"); // 返回 10.33
parseFloat("10 20 30"); // 返回 10
parseFloat("10 years"); // 返回 10
parseFloat("years 10"); // 返回 NaN
7. Math.min() 方法可返回两个指定的数中带有较小的值的那个数。
Math.min(5,'7'); //
Math.min(5,'q'); //NaN 如果有某个参数为 NaN,或是不能转换成数字的非数字值,则返回 NaN
8. Math.max() 方法可返回两个指定的数中带有较大的值的那个数。
Math.max(5,'7'); //
Math.max(5,'q'); //NaN 如果有某个参数为 NaN,或是不能转换成数字的非数字值,则返回 NaN
9.Math.abs() 方法可返回数的绝对值
Math.abs(-7.25); // 7.25
10.Math.ceil() 方法可对一个数进行上舍入
- ceil() 方法执行的是向上取整计算,它返回的是大于或等于函数参数,并且与之最接近的整数。
Math.ceil(0.60); //
Math.ceil(0.40); //
Math.ceil(-5.1); //
11.Math.floo() 方法可对一个数进行下舍入
Math.floor(0.60); //
Math.floor(0.40); //
Math.floor(-5.1); //-6
12.Number.isInteger() 用于判断其参数是为整数
Number.isInteger(0); // true
Number.isInteger(0.1); // false
13.Number.parseFloat()和parseFloat()一样。
14.Number.parseInt()和parseInt()一样。
15.isNaN() 函数用于检查其参数是否是非数字值(和Number.isNaN()一样)
无法使用 for/in 循环来枚举 NaN 属性,也不能用 delete 运算符来删除它。
使用 isNaN() 来判断一个值是否是数字。原因是 NaN 与所有值都不相等,包括它自己。
false的话 就是数字或者隐形数字类型
isNaN(123); // false
isNaN('123'); //false
isNaN('cao'); //true
isNaN('NaN');//true
es6新增
16.Math.trunc方法用于去除一个数的小数部分,返回整数部分。
Math.trunc(4.1) //
Math.trunc(4.9) //
Math.trunc(-4.1) // -4
Math.trunc(-4.9) // -4
Math.trunc(NaN); // NaN
Math.trunc('foo'); // NaN
Math.trunc(); // NaN
17.Math.sign方法用来判断一个数到底是正数、负数、还是零参数为正数,返回+1;
- 参数为负数,返回-1;
- 参数为正数,返回+1;
- 参数为0,返回0;
- 参数为-0,返回-0;
- 其他值,返回NaN。
Math.sign(-5) // -1
Math.sign(5) // +1
Math.sign(0) // +0
Math.sign(-0) // -0
Math.sign(NaN) // NaN
Math.sign('foo'); // NaN
Math.sign(); // NaN
JavaScript里处理数字的一些常用方法的更多相关文章
- JavaScript里处理数组的一些常用方法
修改器方法: 1.pop() 方法从数组中删除最后一个元素 pop() 方法将删除 arrayObject 的最后一个元素,把数组长度减 1,并且返回它删除的元素的值. let arr2 = ['zh ...
- JavaScript里处理字符串的一些常用方法
1.length 属性返回字符串的长度 let srt = "hello world!"; console.log(srt.length) // 12 2.indexOf() 方法 ...
- JavaScript 中的数字和日期类型
本章节介绍如何掌握Javascript里的数字和日期类型 数字EDIT 在 JavaScript 里面,数字都是双精度浮点类型的 double-precision 64-bit binary form ...
- Javascript里,想把一个整数转换成字符串,字符串长度为2
Javascript里,想把一个整数转换成字符串,字符串长度为2. 想把一个整数转换成字符串,字符串长度为2,怎么弄?比如 1 => "01"11 => " ...
- JavaScript 里,$ 代表什么?/JQuery是什么语言?/html中用link标签引入css时的中 rel="stylesheet"属性?/EL表达式是什么?
JavaScript 里,$ 代表什么? 比如说我写一个mouseover事件: $(document).ready(function(){ $("p").mouseover(fu ...
- javascript里的偏函数——本质函数式编程+闭包,返回函数
最终效果: var greet = function(greeting, name) { return greeting + ' ' + name; }; var sayHelloTo = _.par ...
- JavaScript里值比较的方法
JavaScript里值比较的方法 参考资料 一张图彻底搞懂JavaScript的==运算 toString()和valueof()方法的区别 Object.is 和 == 与 === 不同 == 运 ...
- JavaScript 里的 'this' 的一般解释
本文旨在帮助自己和大家理解 JS 里的 this, 翻译.整理并改写自本人关注的一个博主 Dmitri Pavlutin,原文链接如下: https://dmitripavlutin.com/gent ...
- javascript里for循环的一些事情
今天在给一个学妹调她的代码BUG时,她的问题就是在一个for循环里不清楚流程的具体流向,所以导致了页面怎么调都是有问题,嗯确实你如果不清楚语句流向很轻易就会出问题,所以说for循环不会用或者说用的不恰 ...
随机推荐
- AUTOSAR学习之RTE - 可运行实体
本文介绍RTE的运行体(runnable). An AUTOSAR component defines one or more "runnable entities". A run ...
- [译]使用golang每分钟处理百万请求
[译]使用golang每分钟处理百万请求 在Malwarebytes,我们正在经历惊人的增长,自从我在1年前加入硅谷的这家公司以来,我的主要职责是为多个系统做架构和开发,为这家安全公司的快速发展以及百 ...
- hadoop学习(三)----hadoop2.x完全分布式环境搭建
今天我们来完成hadoop2.x的完全分布式环境搭建,话说学习本来是一件很快乐的事情,可是一到了搭环境就怎么都让人快乐不起来啊,搭环境的时间比学习的时间还多.都是泪.话不多说,走起. 1 准备工作 开 ...
- 从MYSQL的ibtmp1文件太大说起
1. 啥情况呀 测试环境机器磁盘空间不足的告警打破了下午的沉寂,一群人开始忙活着删数据.但是,不久前刚清理了一波数据,测试环境在没做压测的情况下不至于短短一个月不到就涨了200G数据,于是,我悄悄的 ...
- (二十九)c#Winform自定义控件-文本框(二)
前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. 开源地址:https://gitee.com/kwwwvagaa/net_winform_custom_control ...
- C/C++ 数据类型
C/C++ 数据类型 C语言包含5个基本数据类型: void, integer, float, double, 和 char. 类型 描述 字节数 取值范围 void 空类型 1 int 整型 4 - ...
- 纯前端下载pdf链接文件,而不是打开预览的解决方案
纯前端下载pdf链接文件,而不是打开预览的解决方案 一,介绍与需求 1.1,介绍 XMLHttpRequest 用于在后台与服务器交换数据.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行 ...
- 【RabbitMQ】如何进行消息可靠投递【上篇】
说明 前几天,突然发生线上报警,钉钉连发了好几条消息,一看是RabbitMQ相关的消息,心头一紧,难道翻车了? [橙色报警] 应用[xxx]在[08-15 16:36:04]发生[错误日志异常],al ...
- 基于SpringBoot从零构建博客网站 - 分页显示文章列表功能
显示文章列表一般都是采用分页显示,比如每页10篇文章显示.这样就不用每次就将所有的文章查询出来,而且当文章数量特别多的时候,如果一次性查询出来很容易出现OOM异常. 后台的分页插件采用的是mybati ...
- html页面中关于按钮type的要求
重要事项:如果在 HTML 表单中使用 button 元素,不同的浏览器会提交不同的值.Internet Explorer 将提交 <button> 与 </button> 之 ...