标准内置对象
一、全局属性
globalThis
全局属性 globalThis 包含全局的 this 值,类似于全局对象(global object)。
Infinity
全局属性 Infinity 是一个数值,表示无穷大。
NaN
全局属性 NaN 是一个表示非数字的值。
undefined
- 全局属性 undefined 表示原始值 undefined 。
- 它是一个 JavaScript 的 原始数据类型 。
- undefined 是全局对 象的一个属性。
- 也就是说,它是全局作用域的一个变量。
- undefined 的最初值就是原始数据类型 undefined。
二、全局函数
eval()
eval() 函数会将传入的字符串当做 JavaScript 代码进行执行。
console.log(eval('2 + 2'))
// output: 4
console.log(eval(new String('2 + 2')))
// output: 2 + 2
console.log(eval('2 + 2') === eval('4'))
// output: true
isFinite()
- 该全局
isFinite()函数用来判断被传入的参数值是否为一个有限数值(finite number)。 - 在必要情况下,参数会首先转为一个数值。
isNaN()
isNaN()函数用来确定一个值是否为NaN。- 注:
isNaN函数内包含一些非常有趣的规则;你也可以使用ECMAScript 2015中定义的Number.isNaN()来判断。
parseFloat()
parseFloat()函数解析一个参数(必要时先转换为字符串)并返回一个浮点数。
function circumference(r) {
return parseFloat(r) * 2.0 * Math.PI
}
console.log(circumference(4.567))
// output: 28.695307297889173
console.log(circumference('4.567abcdefgh'))
// output: 28.695307297889173
console.log(circumference('abcdefgh'))
// output: NaN
parseInt()
parseInt(string, radix)解析一个字符串并返回指定基数的十进制整数,radix是2-36之间的整数,表示被解析字符串的基数。
console.log(parseInt('123'))
// 123 (default base-10)
console.log(parseInt('123', 10))
// 123 (explicitly specify base-10)
console.log(parseInt(' 123 '))
// 123 (whitespace is ignored)
console.log(parseInt('077'))
// 77 (leading zeros are ignored)
console.log(parseInt('1.9'))
// 1 (decimal part is truncated)
console.log(parseInt('ff', 16))
// 255 (lower-case hexadecimal)
console.log(parseInt('0xFF', 16))
// 255 (upper-case hexadecimal with "0x" prefix)
console.log(parseInt('xyz'))
// NaN (input can't be converted to an integer)
decodeURI() 解码
decodeURI()函数能解码由encodeURI创建或其他流程得到的统一资源标识符(URI)。
const uri = 'https://mozilla.org/?x=шеллы'
const encoded = encodeURI(uri)
console.log(encoded)
// Expected output: "https://mozilla.org/?x=%D1%88%D0%B5%D0%BB%D0%BB%D1%8B"
try {
console.log(decodeURI(encoded))
// Expected output: "https://mozilla.org/?x=шеллы"
} catch (e) {
// Catches a malformed URI
console.error(e)
}
encodeURI() 编码
encodeURI()函数通过将特定字符的每个实例替换为一个、两个、三或四转义序列来对统一资源标识符 (URI) 进行编码- (该字符的
UTF-8编码仅为四转义序列) 由两个"代理"字符组成)。
decodeURIComponent() 解码
decodeURIComponent()方法用于解码由encodeURIComponent方法或者其他类似方法编码的部分统一资源标识符(URI)。
encodeURIComponent() 编码
encodeURIComponent()函数通过将特定字符的每个实例替换成代表字符的UTF-8编码的一个、两个、三个或四个转义序列来编码URI- (只有由两个
“代理”字符组成的字符会被编码为四个转义序列)。 - 与
encodeURI()相比,此函数会编码更多的字符,包括URI语法的一部分。
三、基本对象
Object
Object是JavaScript的一种数据类型。- 它用于存储各种键值集合和更复杂的实体。
- 可以通过
Object()构造函数或者使用对象字面量的方式创建对象。
对象字面量
- 对象初始化器是一个用大括号(
{})括起来的以逗号分隔的列表,包含了一个对象的零个或多个属性名称和相关值。 - 可以通过
Object.create()方法,或者使用new运算符调用其构造函数而初始化一个对象。
const object1 = { a: 'foo', b: 42, c: {} }
console.log(object1.a)
// Expected output: "foo"