在使用angular写一些东西的时候,需要用到parseInt()方法来将时间戳转换成时分秒(xx时-xx分-xx秒)的格式,但是因为angular所使用的是Typescript,而
parseInt(string:string,radix?:number):number
在parseInt中传的第一个参数是string类型,所以使用parseInt会报错
类型“number”的参数不能赋给类型“string”的参数。
我找了半天,想了好长时间终于在自己想出来解决办法后,找到了。。。
我们可以在传的参数里面使用toString()方法,将传的参数转换成string类型
let hours:any = parseInt(((timeSpend % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)).toString());
let minutes:any = parseInt(((timeSpend % (1000 * 60 * 60)) / (1000 * 60)).toString());
这样就解决了!!!
PS:当然也可以不用,使用Math.floor()的方法解决(第一种方法我自己想到后在网上查到了,第二种是网上找到的)
但是
parseInt
(“08”, 10)是可以返回8的。 为搞清楚两者的区别, 参考了别人写的
parseInt
&Number的区别:
parseInt
Parses a string argument and returns an integer of the specified radix or base. 核心函数 实现版本 Navigator 2.0: If the first character of the string specified in
parseInt
(string) cannot be converted to a number, returns “NaN” on So
public static void main(String[] args) {
String a="0";
System.out.println(Integer.
parseInt
(a));
char b='0';
System.out.println(Integer.
parseInt
(b));
第一个返回的是0,说明是正确的,但是如果传入的字符就会报错。
上述函数将字符串 007 转换为整数 7。 如果字符串
中
的第一个字符不能转换为数字,则返回 NaN。
字符串转换为二进制整数
parseInt
() 函数解析一个字符串并返回一个整数。 它还可以传入第二个参数,指定了字符串
中
数字的基数。 基数可以是 2 到 36 之间的整数。
函数调用如下所示:
parseInt
(string,
一、报错情景
最近刚刚接触ts,在
使用
TSLint检查自己代码的时候,发现
使用
parseInt
()函数来进行数据类型转换的时候,会报出 Missing radix parameter radix 错误。
二、解决报错
这个错误信息是意思是:缺少一个基数根,也就是指
parseInt
()函数的第二个参数没有指定。出现这个问题,主要是因为你没有深刻掌握
parseInt
()语法,
如果想解决这个错误信息...
Typescript
使用
日志最近这两年,有很多人都在讨论
Typescript
,无论是社区还是各种文章都能看出来,整体来说正面的信息是大于负面的,这篇文章就来整理一下我所了解的
Typescript
。本文主要分为 3 个部分:•
Typescript
基本概念•
Typescript
高级用法•
Typescript
总结
Typescript
基本概念至于官网的定义,这里就不多做解释了,大家...
var str=1250 ; alert(Number(str) ); //得到1250 alert(
parseInt
(str)); //得到1250var str1=00100; alert(Number(str1) ); //得到100 alert(
parseInt
(str1)); //得到64 发现pars
根据我的观察,
parseInt
对于小数点后6位以内的,是可以用来做小数取整,但是超过小数点后6位就有问题。但是其实只有
parseInt
('11') 是正确的。在运行过程
中
传递的内容都会变成字符串再做转换。在
Typescript
时候用
parseInt
传递非字符串类型就会有报错的,必须要字符串类型。如果有小数取整需求,要用Math.floor,千万别用
parseInt
。
parseInt
这个函数是用来转换字符串形式的整数。以上代码会输出什么呢?
不同数据有不同数据的保存类型。数据间的处理就需要不同的数据类型。数据类型的转换是在所赋值的数值类型和被变量接收的数据类型不一致时发生的,它需要从一种数据类型转换成另一种数据类型。
一、现象描述:
页面报系统异常,观察日志只有一句相关报错:
2019-07-20 15:54:44,021 INFO [stdout] (default task-14) 2019-07-20 15:54:44,021 [default task-14] DEBUG xxxxxxxxxxx.Sessio...
报错信息:Tslint: Missing radix parameter(radix) //tslint:缺少基数参数(基数)
于是去找了一下它的用法,发现将省略掉的参数基数,用0代替就可以解决问题了
做到了一个下拉框的选择,用户在
使用
的
使用
,可以选择驾龄的年数和月数,但是在数据库只存月数,所以需要前端进行一个转换。
在做编辑的时候,接口返回的字段是月,所以需要先把月转换成年来在页面展示,刚开始的时候用到了
parseInt
,
this.year=
parseInt
(this.month/12);
但是会出现这样的错误提示
这是因为
parseInt
只能解析字符串
换成Math.f...
const strorageSelectedFilter = localStorage.getItem(selectedFilter); if (strorageSelectedFilter){ const strorageFilter = (_.values(JSON.parse(strorageSelectedFilter)));localStorage是string| null...
使用
强类型变量常常需要从一种类型向另一种类型转换,通常
使用
ToString或
ParseInt
可以来实现一些简单的转换,但是有时候需要像.NET语言
中
那样将一种类型显示的转换为另一种类型,在
TypeScript
规范
中
,被称为”类型断言”,它仍然是类型转换,只是语法是有些不同。下面来详细看看
TypeScript
的强制类型转换。
TypeScript
强制类型转换
在
TypeScript
中
将一个 number 转换成 string ,这样做会报错:
var a:number = 12345;
var b:string = <string> a;
// laygroundSingle.ts(