什么是Web API_如何用javascript与浏览器交互【教程】

9次阅读

Web API 是浏览器提供的接口集合,非 javaScript 语言内置;fetch、document、localStorage 等均属 Web API,由浏览器注入全局对象提供,而 js 引擎仅执行语法,不处理页面、网络等能力。

什么是Web API_如何用javascript与浏览器交互【教程】

Web API 不是 javascript 语言的一部分,而是浏览器提供的、供 JS 调用的接口集合。你写的 fetch()document.getElementById()localStorage.setItem() 全部来自 Web API,不是 JS 引擎内置的。

Web API 和 JavaScript 引擎根本不是一回事

JavaScript 引擎(比如 V8)只管执行 JS 语法:变量、函数、循环promise 等。它不理解“页面”“按钮”“网络请求”——这些能力全靠浏览器在 JS 运行时注入全局对象:windowdocumentnavigatorfetchsetTimeout……它们才是 Web API 的入口。

  • node.js 没有 documentfetch(原生),因为它没实现 Web API,只有 CommonJS / node.js API
  • console.log 看似“JS 自带”,其实是浏览器通过 Web API 注入的,不是语言规范要求的
  • ES 规范只定义 Array.prototype.map 这类东西;Element.addEventListenerdom API,属于 Web 标准,但独立于 ES

最常误用的三个 Web API 场景

新手常以为“能写出来就能跑”,结果卡在时机、作用域或隐式转换上:

  • document.getElementById('myBtn') 返回 NULL?大概率是脚本执行时 DOM 还没加载完——把 JS 放在
text=ZqhQzanResources