学科分类
目录
JavaScript网页编程

数据类型检测

在开发中,当不确定一个变量或值是什么数据类型的时候,可以利用typeof运算符进行数据类型检测。示例代码如下。

console.log(typeof 12);       // 输出结果:number

console.log(typeof '12');      // 输出结果:string

console.log(typeof true);      // 输出结果:boolean

console.log(typeof undefined);    // 输出结果:undefined

console.log(typeof null);      // 输出结果:objectjavascript

在上述示例中,typeof检测null值时返回的是object,而不是null,这是JavaScript最初实现时的历史遗留问题,后来被ECMAScript沿用下来。

使用typeof可以很方便地检测变量的数据类型,示例代码如下。

var age = prompt('请输入您的年龄');

console.log(age)

console.log(typeof age);

上述代码执行后,如果用户什么都不输入,单击“确定”按钮,则age的值为空字符串,类型为string。如果单击“取消”按钮,则的值为null,类型为object。如果输入的是一个数字,则age的值是用字符串保存的数字,类型为string。

typeof运算符的返回结果是一个字符串,可以使用比较运算符“==”来判断typeof返回的检测结果是否符合预期,示例代码如下。

var a = '12';

console.log(typeof a == 'string');    // 输出结果:true

console.log(typeof a == 'number');    // 输出结果:false

在上述代码中,“typeof a”的返回结果是string,在与字符串string比较时,结果为true,表示a是string类型;与number比较时,结果为false,表示a不是number类型。

点击此处
隐藏目录