JavaScript是一种弱类型的计算机语言,对于数据标量存储的数据类型没有强制要求,但计算机程序执行时,需要指定的数据类型参与运算,需要将当前存储的数据类型转化为指定的数据类型。
字符串类型
字符串拼接时触发,其他数据类型自动转化为字符串,参与运算的两个单位一定有一个字符串,才会执行拼接操作。 |
变量. toString(进制)如果变量的储存范围是整数,可以转化的禁止范围是2- 36 |
string(变量/表达式)规则与自动转化规则相同 |
<script>
var num = 100;
// 数值类型
console.log(num);
var str =String(num);
// 字符串类型
console.log(str);
// 拼接触发转化
var str1 = "你好"+num;
console.log(str1);
</script>
运行结果:
数值类型
当转化数据类型为 false null '' '' ' '时转化为0 |
当数据类型为true的时候,转化为数字1。 |
符合数字语法规范的数字转化为对应的数字 |
NaN不符合数字语法规范的字符串 |
number()原则与自动转化一致 |
parseInt()从左开始后取整数部分若第一个字符不符合整数语法,结果是nan |
partseFloat()从左边第一个开始获取浮点数部分,如果左边第一个就不符合整数语法,结果是nan |
<script>
// 当转化数据类型为 false null '' '' ' '时转化为0
var num = false;
var num1 = null;
var num2 = "";
var num3 = '';
// 当数据类型为true的时候,转化为数字1。
var num4 = true;
// NaN不符合数字语法规范的字符串
var num5 = "你好";
// parseInt()从左开始后取整数部分若第一个字符不符合整数语法
// 结果是nan
var num6 = "12a13";
// partseFloat()从左边第一个开始获取浮点数部分
// 如果左边第一个就不符合整数语法,结果是nan
var num7 = "1.12345a6789";
var toNum = Number(num);
var toNum1 = Number(num1);
var toNum2= Number(num2);
var toNum3 = Number(num3);
var toNum4 = Number(num4);
var toNum5 = Number(num5);
var toNum6 = parseInt(num6);
var toNum7 = parseFloat(num7);
</script>
运行结果:
布尔类型
强制转换:Boolean(变量/表达式)转换原则与自动转化位布尔值规则相等 |
当数据类型为0 /0.000 / '' / NaN / false/null / undefined时转化为 false。 |
其他的都为 ture |
<script>
// 当数据类型为0 /0.000 / '' / NaN / false/null / undefined
// 时转化为 false。
var str = 0;
var str1 = 0.000;
var str2 = "";
var str3 = NaN;
var str4 = undefined;
var str5 = null;
var xx = Boolean(str);
var xx1 = Boolean(str1);
var xx2 = Boolean(str2);
var xx3 = Boolean(str3);
var xx4 = Boolean(str4);
var xx5 = Boolean(str5);
// 其他的都为 ture
var str6 = "你好";
var xx6 = Boolean(str6);
console.log(xx);
console.log(xx1);
console.log(xx2);
console.log(xx3);
console.log(xx4);
console.log(xx5);
console.log(xx6);
</script>
运行结果:
空类型
undefined 是 JavaScript定义的一种数据类型 是 没有赋值 的 结果 本质上是错误的语法操作 |
给变量赋值 空值 ,是 专门给变量赋值 赋值 null 空值的结果,null 是 正确 赋值 null 的执行结果 。 |