Skip to content

全局属性和方法

1.JavaScript 全局属性

属性描述
Infinity代表正的无穷大的数值。
NaN指示某个值是不是数字值。
undefined指示未定义的值。

2.JavaScript 全局函数

isNaN()

作用:isNaN() 函数用于检查其参数是否是非数字值。

返回值:如果参数值为 NaN 或字符串、对象、undefined等非数字值则返回 true, 否则返回 false。

语法

js
isNaN(value)
console.log(isNaN(123))

parseInt()

作用:parseInt() 函数可解析一个字符串,并返回一个整数。

语法

js
parseInt(string, radix)

参数

  • string:必需。要被解析的字符串。
  • radix:可选。表示要解析的数字的基数。该值介于 2 ~ 36 之间。

注意

当参数 radix 的值为 0,或没有设置该参数时,parseInt() 会根据 string 来判断数字的基数。

当忽略参数 radix , JavaScript 默认数字的基数如下:

  • 如果 string 以 "0x" 开头,parseInt() 会把 string 的其余部分解析为十六进制的整数
  • 如果 string 以 0 开头,那么 ECMAScript v3 允许 parseInt() 的一个实现把其后的字符解析为八进制或十六进制的数字。
  • 如果 string 以 1 ~ 9 的数字开头,parseInt() 将把它解析为十进制的整数
js
console.log(parseInt(234))          // 234
console.log(parseInt(0x234))        // 564
console.log(parseInt(0234))         // 156
console.log(parseInt(234.2))        // 234

parseFloat()

作用:解析一个字符串,并返回一个浮点数

语法

js
parseFloat(string)

注意

  • 字符串中只返回第一个数字。
  • 开头和结尾的空格是允许的。
  • 如果字符串的第一个字符不能被转换为数字,那么 parseFloat() 会返回 NaN。
js
console.log(parseFloat('10'))               // 10
console.log(parseFloat('10.33'))            // 10.33
console.log(parseFloat('10 20 30'))         // 10
console.log(parseFloat(' 60 '))             // 60
console.log(parseFloat('20 hello'))         // 20
console.log(parseFloat('hello you 20'))     // NaN

Number(object)

作用:Number() 函数把对象的值转换为数字。如果对象的值无法转换为数字,那么 Number() 函数返回 NaN。

语法:Number(object)

  • object:可选。一个 JavaScript 对象。如果没有提供参数,则返回0。

注意:如果参数是 Date 对象,Number() 返回从 1970 年 1 月 1 日至今的毫秒数。

js
var test1= new Boolean(true);
var test2= new Boolean(false);
var test3= new Date();
var test4= new String("999");
var test5= new String("999 888");

console.log(Number(test1))      // 1
console.log(Number(test2))      // 0
console.log(Number(test3))      // 1686029063204
console.log(Number(test4))      // 999
console.log(Number(test5))      // NaN

String(object)

作用:String() 函数把对象的值转换为字符串。

语法:String(object)

  • object:必选。一个 JavaScript 对象

注意:String() 函数返回与字符串对象的toString()方法值一样。

js
var test1 = new Boolean(1);
var test2 = new Boolean(0);
var test3 = new Boolean(true);
var test4 = new Boolean(false);
var test5 = new Date();
var test6 = new String("999 888");
var test7 = 12345;

console.log(String(test1))      // true
console.log(String(test2))      // false
console.log(String(test3))      // true
console.log(String(test4))      // false
console.log(String(test5))      // Tue Jun 06 2023 13:26:49 GMT+0800 (中国标准时间)
console.log(String(test6))      // 999 888
console.log(String(test7))      // 12345

MIT Licensed