Rumah > hujung hadapan web > tutorial js > 关于js数据类型的转换问题详解

关于js数据类型的转换问题详解

迷茫
Lepaskan: 2017-03-26 16:55:53
asal
1402 orang telah melayarinya

js数据类型

-->基本类型(值类型):数字number、字符串string、布尔boolean

-->复合类型(引用类型):对象数组Array、时间类型Date函数类型Function、正则表达式RegExp...)

-->空类型:Null、Undefined

一:数据类型的转换

1显示转换

A.转数字:

如果要将一个string类型的数据转化成number可以用:

 (1)Number转换:

var a="123";
a=Number(a);
console.log(typeof a);    // number
Salin selepas log masuk
var a="abc";
a=Number(a);
console.log(typeof a);     // NaN
Salin selepas log masuk
var a=" ";
a=Number(a);
console.log(typeof a);    // 0
Salin selepas log masuk

注意:①如果转换的内容本身就是一个数值类型的字符串,那么将来在转换的时候会返回自己number类型的(特例:true返回1 false返回0)

   ②如果转换的内容本身不是一个数值类型的字符串,那么在转换的时候结果为NaN

③如果转换的内容是空的字符串(null),那么转换的结果为 0

④如果是其他的字符串,那么将来转化的结果为NaN

  (2)ParseInt转换

var a="123";
a=parseInt(a);
console.log(typeof a);    //number
Salin selepas log masuk
var a="    456467abasb";
a=parseInt(a);
console.log(a);    //456467
Salin selepas log masuk
var a="   a123";
a=parseInt(a);
console.log(a);     //NaN
Salin selepas log masuk
var a=123.12a=parseInt(a);
console.log(a);    //123
Salin selepas log masuk

注意:①忽略字符串前面的空格,直到找到第一个非空字符,还会将数字后面的非数字的字符串去掉

②如果第一个数字不是数字符号或者负号,返回NaN

③会将小数取整(向下取整)

(3)parseFloat 浮点数(小数)

    与parseInt一样,唯一的区别是parseFloat可以保留小数

B.转字符串

可以将其他的数据类型转换成字符串

(1)String() 

var a123;
a=String(a);
Salin selepas log masuk

(2)toString()的方法来进行转换(包装类)

var a=123;
a=a.toString();
Salin selepas log masuk

 注意:null和undefined没有toString方法的,String所有类型都能转

C.转Boolean类型

可以将其他类型转为boolean值 Boolean()

var a="true";
a=Boolean(a);
Salin selepas log masuk

注意:在进行转换的时候,所有的内容在转化以后结果都是true,除了:false、" "(空字符串)、0、NaN、null、undefined、“”

2.隐式转化

a)转number

var a="123";
a=+a;
Salin selepas log masuk

注意:+、-、*、/、%都可以将字符串隐式转换成number

b)转String

var a=123;
a=a+" ";
Salin selepas log masuk

c)转boolean

 a=123=!!a;
console.log(typeof a);    //true
a=!a; 
console.log(typeof a);    //false
Salin selepas log masuk

Atas ialah kandungan terperinci 关于js数据类型的转换问题详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan