js 强制类型转换

210 阅读2分钟
/*
 * 强制类型转换
 * 指的是将一个数据类型强制转换为其他的数据类型
 * 类型转换主要指,将其他的数据类型,转换为String,Number,Boolean
 *
 */

/*
 * 将其他的数据类型转换为String
 * 方式一:
 * 调用被转换数据类型的tostring()方法
 * 该方法不会影响原变量,它会将转换的结果返回
 * 但是注意:null和undefined这俩个值没有toString()方法
 *
 * 方式二:
 * 调用String()函数,并将被转换的数据作为参数传递给函数
 * 使用String()函数做强制类型转换时,
 * 对于Number和Boolean实际上就是调用得toString()方法
 * 但是对于null和undefined 就不会调用toString()方法
 * 它会将null直接转成"null"
 * 将undefined直接转换成"undefinied"
 * 
 * //调用a的toString()方法
 * //调用xxx的yyy()方法,就是xxx.yyy()
 */

var a = 123;
a = a.toString();
a = true;
a = a.toString();

/*
 * 将数据类型转换为Number
 * 转换方式一:
 * 使用Number()函数
 * 字符串-->数字
 * 1.如果是纯数字的字符串 ,则直接将其转换为数字
 * 2.如果字符串中有非字符串的内容,则转换为NaN
 * 3.如果一个字符串中是一个空串或者是一个全是空格的字符
 *
 * 布尔-->数字
 * true转为1
 * false转为0
 *
 * undefined-->数字 0
 */

var a = "123";

/**
 * //调用Number()函数来将a转换为Number类型
 */

a = Number(a);

a = "123px";
a = parseInt(a);
console.log(typeof a);
console.log(a);/*
 * 强制类型转换
 * 指的是将一个数据类型强制转换为其他的数据类型
 * 类型转换主要指,将其他的数据类型,转换为String,Number,Boolean
 *
 */

/*
 * 将其他的数据类型转换为String
 * 方式一:
 * 调用被转换数据类型的tostring()方法
 * 该方法不会影响原变量,它会将转换的结果返回
 * 但是注意:null和undefined这俩个值没有toString()方法
 *
 * 方式二:
 * 调用String()函数,并将被转换的数据作为参数传递给函数
 * 使用String()函数做强制类型转换时,
 * 对于Number和Boolean实际上就是调用得toString()方法
 * 但是对于null和undefined 就不会调用toString()方法
 * 它会将null直接转成"null"
 * 将undefined直接转换成"undefinied"
 * 
 * //调用a的toString()方法
 * //调用xxx的yyy()方法,就是xxx.yyy()
 */

var a = 123;
a = a.toString();
a = true;
a = a.toString();

/*
 * 将数据类型转换为Number
 * 转换方式一:
 * 使用Number()函数
 * 字符串-->数字
 * 1.如果是纯数字的字符串 ,则直接将其转换为数字
 * 2.如果字符串中有非字符串的内容,则转换为NaN
 * 3.如果一个字符串中是一个空串或者是一个全是空格的字符
 *
 * 布尔-->数字
 * true转为1
 * false转为0
 *
 * undefined-->数字 0
 */

var a = "123";

/**
 * //调用Number()函数来将a转换为Number类型
 */

a = Number(a);

a = "123px";
a = parseInt(a);
console.log(typeof a);
console.log(a);