有电书房店铺主页二维码
有电书房
微信扫描二维码,访问我们的微信店铺

Web API经典实例

115.20
运费: ¥ 5.00-22.00
库存: 300 件
Web API经典实例 商品图0
Web API经典实例 商品图1
Web API经典实例 商品图2
Web API经典实例 商品图3
Web API经典实例 商品缩略图0 Web API经典实例 商品缩略图1 Web API经典实例 商品缩略图2 Web API经典实例 商品缩略图3

商品详情

书名:Web API经典实例
书号:978-7-5239-0154-0
定价:128元
作者:[美]乔·阿塔尔迪(Joe Attardi) 著 马建勋 程雨柔 孙嘉瑶 译
出版时间:2025-07-31
出版社:中国电力出版社
页码: 328    字数(千字):379
开本:16开    版次:1    印次:1


品牌介绍

中国电力出版社成立于 1951 年,作为中国成立最早的中央科技出版社之一,曾隶属于水利电力部、能源部、电力工业部、国家电力公司,现为国家电网公司所属的科技出版社,在电气技术专业出版领域享有极高的声誉。该社作为以图书出版为主体,音像、电子出版物、期刊、网络出版共同发展的大型出版企业,以强大的出版资源和高素质的专业队伍,致力于向读者提供包括电力工程、电气工程、建筑工程、电子技术、信息技术、外语、大中专教材、家教等学科门类齐全的权威出版物,也竭力为广大师生提供精品教材,是教育部和北京市教委规划教材的出版基地之一。


编辑推荐

JavaScript应用程序进阶之路。 编辑推荐 JavaScript赋予Web开发者强大的能力,使其能够创造丰富的浏览器交互体验。在现代Web开发领域,这些能力已不再依赖传统插件,而是由浏览器本生提供核心支持。现代Web API正在彻底革新网页应用的构建方式,其功能覆盖范围已超越早期需要浏览器插件才能实现的场景。尽管部分API尚处实验阶段,但多数已进入生产可用状态。 本书作为实战指南,作者将带领开发者深入探索现代浏览器中的强大API体系,并通过具体任务场景演示其应用模式。由于这些特性均属Web标准规范,开发者可通过权威资源(如MDN Web文档)获取完整技术资料。更重要的是,此类知识具备高度通用性,其设计理念与实践经验可在不同企业及项目间无缝迁移。 专家推荐 “本书全面覆盖浏览器原生API技术栈,从基础到进阶为不同阶段的开发者提供实用代码示例。作者深入浅出的讲解风格结合清晰的代码示例,将枯燥的API学习转化为愉悦的探索之旅。对于Web开发者来说,本书都将是技术升级的必备指南!” ——Sarah Shook Software developer/owner,Shook LLC “本书不仅刷新了我对浏览器技术的认知边界,更揭开了众多潜藏API能力的神秘面纱。” ——Bret Little Staff Software Engineer,Shopify


产品特色

JavaScript应用程序进阶之路。


作者介绍

Joe Attardi拥有超过20年的前端软件开发经验,并开发了许多基于浏览器的应用程序。他还为Nortel、Dell、Constant Contact、Salesforce和Synopsys打造过丰富的前端体验,并专注于JavaScript和TypeScript开发。


内容介绍

本书的主要内容有:通过浏览器原生能力提升Web应用体验。系统学习现代浏览器API所提供的广泛功能。深入探索实验性阶段的前瞻性API。摆脱第三方库依赖,发掘如原生对话框组件等新元素。依赖原生硬件设备能力,构建更高功能和交互性的Web应用。深刻理解浏览器权限模型,解锁地理位置信息和通知推送等核心功能。
本书适用于本书非常适合对JavaScript 有一定了解并想要充分利用网络平台的软件开发人员。


前言

前言 自1995 年底推行以来,JavaScript 已经走过了一段漫长的道路。早期的Web 浏览器内核提供的API 非常有限,很多高级的功能通常要依赖第三方JavaScript库,甚至在特殊情况下需要浏览器插件来完成。 Web API 是浏览器提供的一系列全局对象和函数。通过这些对象和函数,可以运行JavaScript 代码与文档对象模型(DOM)交互、执行网络通信、并与本机设备集成等。 现代浏览器的强大功能 现代Web API 对于Web 平台有两个主要优势: 无需更多插件 之前,很多浏览器功能要借助本机应用程序或笨重的浏览器插件才能使用(还记得ActiveX 和Flash 吗)。 减少第三方依赖 过去需要第三方JavaScript 库才能实现的许多功能,现代浏览器都已提供了。 因此,像jQuery、Lodash 和Moment 这样的曾经流行的库通常不再需要了。 第三方库的弊端 第三方库对于支持老旧浏览器或新功能非常有用,但也存在一些弊端:更多的代码下载 使用第三方库会增加浏览器需要加载的JavaScript 代码量。无论是与应用程序打包在一起,还是从内容分发网络(CDN)单独加载,浏览器都仍然需要下载它。这可能会导致加载时间变长,并增加移动设备上的电池消耗。 风险增加 开源的库,即使是流行的库,也可能停止维护。当发现漏洞或安全问题时,无法保证会有更新。相比之下,浏览器由大型公司(主要浏览器来自Google、Mozilla、Apple 和Microsoft)支持,因此更有可能修复这些问题。这并不是说使用第三方库就一定是不好的。如果需要支持旧版浏览器,使用第三方库则有很多好处。就像软件开发一样,库的使用需要权衡利弊。 本书的目标读者 本书非常适合对JavaScript 有一定了解并想要充分利用网络平台的软件开发人员。 本书假设你已经具备JavaScript 语言的基础知识,包括语法、特性和标准库函数,同时也了解构建交互式浏览器端JavaScript 应用程序的DOM 接口。 本书涵盖了各种各样的内容,适合各个技术水平的开发者。即使是刚入门的新手也能找到适合自己的部分。 示例代码 本书每章都包含一些的样例(完成指定任务的代码示例)。每个样例由三个部分组成: 问题 描述样例需要解决的问题。 方案 具体的解决方案,包括代码和注解。 讨论 对主题的深入讨论。可能包含其他代码示例以及与其他技术的比较。 本书所有的代码示例和在线演示均可以在配套网站https://WebAPIs.info 上找到。 其他资源 本质上讲,Web 无时不在改变。将会有很多优秀的在线资源出现来解答或澄清新的问题。 CanIUse.com 本书写作之时,书中的一些API 仍在开发中或“实验”阶段。使用这些API 时注意样例中的兼容性说明。大多数功能,可以通过https://CanIUse.com 查看最新的兼容性数据。也可以按功能名称搜索,并查看有关浏览器版本支持以及API 对浏览器版本的任何限制或警告。 MDN Web 文档 MDN Web 文档(https://oreil.ly/rLxi7)是包含所有Web API 的权威文档。它涵盖了本书中的所有API 详细信息以及其他主题,例如CSS 和HTML。同时也包含一些深入的文章和教程以及API 规范。 API 规范 有任何疑问,相关功能或API 的规范是最权威的资源。这些规范虽然读起来比较枯燥,但它详细地记录了各种特殊情况和预期行为。 虽然不同的API 有着不一样的标准,但都能在超文本应用程序技术工作组(WHATWG)(https://oreil.ly/PR0x7)或者万维网联盟(W3C)(https://oreil.ly/dFokl)上找到对应的规范。 维护和制定ECMAScript 标准(也是JavaScript 语言标准)的是Ecma 国际39技术委员会,即大名鼎鼎的TC39(https://tc39.es)。 排版约定 本书采用以下排版约定。 斜体(Italic) 表示新术语、URL、电子邮件地址、文件名和文件扩展名。 等宽字体(Constant width) 表示程序清单,在段落内表示程序元素,例如变量、函数名称、数据库、数据类型、环境变量、语句和关键字。 粗体等宽字体(Constant width bold) 表示应由用户原封不动输入的命令或其他文本。 斜体等宽字体(Constant width italic) 表示应该替换成用户提供值的文本,或者由上下文决定的值。 使用示例代码 本书资料(包括示例代码,练习等)均可在https://github.com/joeattardi/webapicookbook 下载,也可查看网站(https://WebAPIs.info),本书中的大多示例已开发为完整的,可工作的在线示例。 有任何技术疑问, 或者代码示例运行的问题, 请随时发送email 到bookquestions@oreilly.com。 本书旨在帮助您完成工作。通常情况下,本书提供的示例代码,可以在自己个人的程序和文档中使用它。除非使用大量的代码,否则无需联系我们获得许可。例如,编写一个使用本书多个代码片段的程序不需要许可。销售或分发来自O’Reilly 图书的示例需要许可。引用本书并引用示例代码来回答问题不需要许可。将本书大量示例代码纳入产品文档需要许可。 我们很希望但并不强制要求你在引用书中内容时加上引用说明。引用说明通常包括标题、作者、出版商和ISBN。例如,“Web API Cookbook by Joseph Attardi (O’Reilly). Copyright 2024 Joe Attardi, 978-1-098-15069-3”。 如果你觉得自己对示例代码的用法超出了上述许可的范围, 请随时通过permissions@oreilly.com 联系我们。 O’Reilly 在线学习平台(O’Reilly Online Learning) 近40 年来,O’Reilly Media 致力于提供技术和商业培训、知识和卓越见解,来帮助众多公司取得成功。 公司独有的专家和改革创新者网络通过O’Reilly 书籍、文章以及在线学习平台,分享他们的专业知识和实践经验。O’Reilly 在线学习平台按照您的需要提供实时培训课程、深入学习渠道、交互式编程环境以及来自O’Reilly 和其他200 多家出版商的大量书籍与视频资料。更多信息,请访问网站:https://www.oreilly.com/。 联系我们 任何有关本书的意见或疑问,请按照以下地址联系出版社。 美国: O’Reilly Media, Inc. 1005 Gravenstein Highway North Sebastopol, CA 95472 中国: 北京市西城区西直门南大街2 号成铭大厦C 座807 室(100035) 奥莱利技术咨询(北京)有限公司 勘误、示例和其他信息可访问https://oreil.ly/web-api-cookbook 获取。 对本书中文版的勘误可以发电子邮件到errata@oreilly.com.cn。 欲了解本社图书和课程的新闻和信息,请访问我们的网站http://oreilly.com。 我们的Facebook:http://facebook.com/oreilly。 我们的YouTube:http://youtube.com/oreillymedia。 致谢 首先,我要衷心感谢我的家人和朋友对我的支持,尤其是我的妻子Liz 和儿子Benjamin,一直容忍我日夜不停地敲打键盘。我在写这本书时,打字往往非常快而且声音很大。 我要特别感谢高级策划编辑Amanda Quinn,是她给了我成为一名O’Reilly 作者的机会。多年来,我阅读了无数O’Reilly 出版的书籍,从未想过有一天自己也能成为其中一员。还要感谢Louise Corrigan 将我介绍给Amanda,让我开始写书(几年前与我合作出版了我的第一本书)! 特别感谢高级开发编辑Virginia Wilson,她在写作和编辑的整个过程中对我进行了细致的指导,并定期跟进进度,确保项目顺利进行。 我还要感谢本书的优秀技术审稿人:Martine Dowden、Schalk Neethling、Sarah Shook 和Adam Scott。他们的宝贵意见使本书的质量得到了很大提升。 最后,我要感谢所有设计和开发这些现代Web API 的人。没有他们的辛勤工作,这本书就不可能存在!


目录

目录
前言 1
第1 章 异步API 9
10 引言 9
11 Promise 的使用 11
12 有备用方案的图片加载 12
13 链式调用Promises15
14 使用async 和await 关键词 16
15 并行使用Promises17
16 使用requestAnimationFrame 为元素添加动画效果 19
17 用Promise 封装事件API 22
第2 章 使用Web Storage API 实现简单的数据持久化 25
20 引言 25
21 检查Web Storage 支持状态 27
22 持久化字符串数据 28
23 持久化简单对象 29
24 持久化复杂对象 31
25 监听存储变化 36
26 查找所有已知键 37
27 移除数据38
第3 章 URL 和路由 41
30 引言 41
31 解析相对路径URL 43
32 移除URL 中的查询参数 44
33 向URL 中添加查询参数 46
34 读取查询参数 49
35 创建一个简单的客户端路由 50
36 匹配URL 到模式 53
第4 章 网络请求 57
40 引言 57
41 使用XMLHttpRequest 发送请求 58
42 使用Fetch API 发送GET 请求 59
43 使用Fetch API 发送POST 请求 61
44 使用Fetch API 上传文件 63
45 使用Beacon 发送数据 64
46 使用服务器发送的事件监听远程事件 65
47 使用WebSockets 实时交换数据 67
第5 章 IndexedDB 71
50 引言 71
51 在数据库中创建、读取和删除对象73
52 升级现有数据库 80
53 使用索引进行查询 82
54 使用游标搜索字符串值 85
55 对大型数据集进行分页 87
56 在IndexedDB API 中使用Promises 89
第6 章 观察DOM 元素 93
60 引言 93
61 滚动视图中图像的延迟加载 95
62 使用Promise 封装IntersectionObserver 97
63 自动暂停和播放视频 98
64 高度变化的动画效果 99
65 根据元素的大小改变内容 102
66 当元素进入视窗时添加一个过渡 103
67 无限滚动105
第7 章 表单 107
70 引言 107
71 用本地存储数据填充表单字段 109
72 使用Fetch 和FormData API 提交表单 110
73 使用JSON 提交表单 112
74 标识一个字段是必填的 114
75 数字输入的约束 115
76 指定验证模式 116
77 表单验证 116
78 采用自定义验证逻辑 120
79 验证一组复选框 122
710 异步地验证字段 125
第8 章 Web 动画API 129
80 引言 129
81 在点击时应用“涟漪”效果 131
82 启动和停止动画 134
83 动画化添加和移除DOM 元素 135
84 反转动画137
85 显示滚动进度指示器 140
86 让元素弹跳 142
87 同时运行多个动画 144
88 显示加载动画 145
89 尊重用户的动画偏好 148
第9 章 Web Speech API 151
90 引言 151
91 向文本字段添加口述功能 153
92 用Promise 封装语音识别 156
93 获取可用的语音 158
94 语音合成159
95 自定义语音合成参数 160
96 自动暂停语音 161
第10 章 文件处理 163
100 引言 163
101 从文件中加载文本 164
102 将图像作为数据URL 加载 166
103 像URL 对象一样加载本地视频 168
104 使用拖放功能加载图像 170
105 检查并申请权限 172
106 将API 数据导出到文件 174
107 通过下载链接导出API 数据 176
108 通过拖放上传文件 178
第11 章 国际化 181
110 引言 181
111 日期的格式化 182
112 获取格式化日期的各个部分 183
113 格式化相对日期 184
114 数字格式化 185
115 四舍五入小数位 187
116 格式化价格范围 187
117 格式化计量单位 188
118 应用复数规则 189
119 统计字符、单词和句子 191
1110 格式化列表 192
1111 对名称数组进行排序 194
第12 章 Web 组件 197
120 引言 197
121 创建一个组件来显示今天的日期 200
122 创建一个组件格式化一个自定义日期 201
123 创建一个反馈组件 204
124 创建个人信息卡组件 207
125 创建一个懒加载图像组件209
126 创建一个隐藏/ 显示组件 211
127 创建带样式的按钮组件 214
第13 章 UI 元素 219
130 引言 219
131 创建一个警告对话框 220
132 创建Confirmation 对话框 223
133 创建Confirmation 对话框的Web 组件225
134 使用显示/ 隐藏元素 228
135 显示弹出框 230
136 手动控制弹出框 231
137 弹出框与元素的相对定位232
138 显示工具栏 235
139 显示通知 237
第14 章 设备集成 241
140 引言 241
141 读取电池状态 242
142 读取网络状态 244
143 获取设备位置 246
144 在地图上显示设备位置 248
145 复制和粘贴文本 250
146 使用Web Share API 分享内容 252
147 设备震动 254
148 获取设备方向 255
第15 章 性能测量 257
150 引言 257
151 测量页面加载性能 258
152 测量资源性能 259
153 找到最慢的资源 260
154 找到特定资源的耗时 261
155 分析渲染性能 262
156 分析多步骤任务 264
157 监听性能条目 265
第16 章 控制台的使用 269
160 引言 269
161 控制台输出的样式设置 269
162 日志等级的使用 270
163 创建命名日志器 271
164 在表格中显示对象数组 272
165 使用控制台计时器 275
166 使用控制台组 276
167 使用计数器 278
168 记录变量及其值 279
169 记录堆栈跟踪 280
1610 验证预期值 281
1611 检查对象的属性 282
第17 章 CSS 285
170 引言 285
171 高亮文本范围 285
172 防止无样式文本闪烁 289
173 动画化DOM 转换 291
174 在运行时修改样式表 293
175 有条件的设置CSS 类 293
176 匹配媒体查询 294
177 获取元素的计算样式 295
第18 章 媒体 299
180 引言 299
181 录屏 299
182 使用用户的相机采集图像302
183 通过用户的相机采集视频305
184 检测系统媒体功能 307
185 添加视频滤镜 308
第19 章 结语 311
190 引言 311
191 为第三方库辩护 311
192 检测功能,而非浏览器版本 311
193 polyfill 312
194 展望未来 312


有电书房店铺主页二维码
有电书房
扫描二维码,访问我们的微信店铺

Web API经典实例

手机启动微信
扫一扫购买

收藏到微信 or 发给朋友

1. 打开微信,扫一扫左侧二维码

2. 点击右上角图标

点击右上角分享图标

3. 发送给朋友、分享到朋友圈、收藏

发送给朋友、分享到朋友圈、收藏

微信支付

支付宝

扫一扫购买

收藏到微信 or 发给朋友

1. 打开微信,扫一扫左侧二维码

2. 点击右上角图标

点击右上角分享图标

3. 发送给朋友、分享到朋友圈、收藏

发送给朋友、分享到朋友圈、收藏