内置对象

JavaScript 没有标准库,但是有一些内置对象,可以不需要导入就使用一些类似其他语言的标准库的方法。

built-in #

eval #

call #

encodeURIComponent

setInterval

setTimeout

arguments对象 #

example1:

(function() {
  for (let argument of arguments) {
    console.log(argument);
  }
})(1, 2, 3);

// 1
// 2
// 3

example2:

function foo(n) {
  // 隐式绑定 foo 函数的 arguments 对象. arguments[0] 是 n,即传给foo函数的第一个参数
  var f = () => arguments[0] + n;
  console.log(f());
}

foo(1); // 2
foo(2); // 4
foo(3); // 6
foo(3,2);//6

Object #

assign #

keys #

hasOwnProperty #

判断 key 是否在对象中。

function main() {
    a = {hello: "world"}

    if ("hello" in a) {
        console.log("has 1")
    }

    if (a.hasOwnProperty("hello")) {
        console.log("has 2")
    }
}
// output:
// has 1
// has 2

Array #

let iterable = [10, 20, 30];

push #

unshift #

splice #

从数组中添加/删除项目,返回被删除的项目,并且会改变原数组。

sideList = db.get(KeyProject, []) as [ProjectDetailModel]
sideList.splice(0, 0, data)
db.set(KeyProject, sideList)

String #

let iterable = "boo";

Map #

Set #

Slice #

Array.prototype.slice #

JSON #

JSON.stringify 方法将一个 JavaScript 对象或值转换为 JSON 字符串

RegExp #

RegExp.$1 用来匹配正则里的分组。

方法 描述
exec 一个在字符串中执行查找匹配的RegExp方法,它返回一个数组(未匹配到则返回 null)。
test 一个在字符串中测试是否匹配的RegExp方法,它返回 true 或 false。
match 一个在字符串中执行查找匹配的String方法,它返回一个数组,在未匹配到时会返回 null。
matchAll 一个在字符串中执行查找所有匹配的String方法,它返回一个迭代器(iterator)。
search 一个在字符串中测试匹配的String方法,它返回匹配到的位置索引,或者在失败时返回-1。
replace 一个在字符串中执行查找匹配的String方法,并且使用替换字符串替换掉匹配到的子字符串。
split 一个使用正则表达式或者一个固定字符串分隔一个字符串,并将分隔后的子字符串存储到数组中的 String 方法。

正则表达式标志 #

标志 描述
g 全局搜索。
i 不区分大小写搜索。
m 多行搜索。
s 允许 . 匹配换行符。
u 使用unicode码的模式进行匹配。
y 执行“粘性(sticky)”搜索,匹配从目标字符串的当前位置开始。

当我们指定g标志后,每次运行exec(),正则表达式本身会更新lastIndex属性,表示上次匹配到的最后索引。

Math #

max #

Proxy #

Proxy 对象用于创建一个对象的代理,从而实现基本操作的拦截和自定义(如属性查找、赋值、枚举、函数调用等)。

XMLHttpRequest #

XMLHttpRequest (XHR) 是一种创建 AJAX 请求的 JavaScript API 。它的方法提供了在浏览器和服务器之间发送请求的能力。

Ajax #

AJAX(Asynchronous JavaScript And XML )是一种使用 XMLHttpRequest 技术构建更复杂,动态的网页的编程实践。

Fetch API #