JavaScript笔记day03

一、强制类型转换

将其他的类型转换为String,Number,Boolean

1、转换为String类型

方式一:调用被转换数据的toString()方法,该方法不会影响原变量
注意:null和undefined这两个值没有toString()方法,如果调用他们的方法就会报错。
例子:
var a=123;
console.log(typeof a.toString());/a=a.toString();
输出[Web浏览器] "string"
a=null/undefined;
a.toString();(报错)

方式二:调用String()函数,并将被转换的数据作为参数传递给函数
var a=123; 
a=String(a);
console.log(typeof a);
输出[Web浏览器] "string"


2、转换为Number类型

方式一:使用Number函数
注意:如果是纯数字的字符串,则直接将其转换为数字,
如果是字符串中含有非数字的字符和undefined,则转换为NaN,
全部空格或者空字符或者null转换为0,布尔值的true转为1,false转为0
var a="123"; 
a=Number(a);
console.log(typeof a);
输出[Web浏览器] "number"

方式二:这种方式专门对付有包含非数字的字符串
1、parseInt()把一个字符串转换为一个整数
如果数字开头则会提取直到遇到第一个非数字字符为止之前的数字,
如果非数字字符开头则会转为NaN
var a="12p3";//12
var b="px123"//NaN
a=parseInt(a);
b=parseInt(b);
console.log(a);
console.log(b);
输出:
[Web浏览器] "12"
[Web浏览器] "NaN"
特殊:例如"070"字符串有些浏览器是当成8进制,有些当成10进制
解决:可以在parseInt(a,10)中传递两个参数,第一个表示要转化的字符串,第二个表示要转化成的进制

2、parseFloat()把一个字符串转换为一个浮点数
如果数字开头则会提取"."后遇到第一个非数字字符为止之前的数字,
如果非数字字符开头则会转为NaN
var a="12.222p3"; 
var b="px123"
a=parseFloat(a);
b=parseFloat(b);
console.log(a);
console.log(b);
输出:
[Web浏览器] "12.222"
[Web浏览器] "NaN"

注意:如果对非String使用parseInt()\parseFloat(),
它会先将其转换为String,然后再转换
则布尔值true/false null\undefined使用以上两种方式都为NaN
var a=true; 
var b=null;
var c=undefined;
a=parseInt(a);
b=parseInt(b);
c=parseInt(c);
console.log(a);
console.log(b);
console.log(c);
输出:
[Web浏览器] "NaN"	
[Web浏览器] "NaN"	
[Web浏览器] "NaN"

3、转换为Boolean

使用Boolean()函数
数字——>布尔
	除了0和NaN为false,其余都为true
字符串——>布尔
	除了空串为false,其余都为ture
null和undefined都是false
对象也会转化为true

二、其他进制的数字

1、16进制

在js中16进制都是0x开头,输出的时候都会转为10进制输出
var a=0xff;
console.log(a);
输出:[Web浏览器] "255"	

2、8进制

在js中8进制的数字都是以0开头,输出时会转化为10进制
var a=033;
console.log(a);
输出:[Web浏览器] "27"

3、2进制

在js中2进制使用0b开头,输出时转换为10进制,
但不是所有浏览器或者编译器都支持
var b=0b10;
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

废材终结者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值