Skip to content

Commit

Permalink
AutoCorrect fix invalid spaces files/zh-cn.
Browse files Browse the repository at this point in the history
  • Loading branch information
huacnlee committed Jun 15, 2022
1 parent e17595a commit 80966d9
Show file tree
Hide file tree
Showing 1,012 changed files with 2,393 additions and 2,393 deletions.
2 changes: 1 addition & 1 deletion files/zh-cn/glossary/udp/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ translation_of: Glossary/UDP
---
**UDP**(用户数据报协议)是一个与 {{glossary("IPv6","IP 协议")}} 一起使用的长期{{glossary("protocol", "协议")}},用于在传输速度和效率比安全性和可靠性更重要的场合下发送数据。

UDP 使用一个简单的、具有最小协议机制的[无连接通信](https://zh.wikipedia.org/wiki/無連接式通訊)模型。UDP 使用[校验和](https://zh.wikipedia.org/wiki/校验和)保证数据完整性,使用[端口号](https://zh.wikipedia.org/wiki/通訊埠)以区分数据发送方和接收方中不同的应用程序。它无需[握手](https://zh.wikipedia.org/wiki/握手_(技术))会话,即将不[可靠](https://zh.wikipedia.org/wiki/可靠性_(计算机网络))的底层网络直接暴露给了用户的应用程序:不保证消息交付、不保证交付顺序也不保证消息不重复。如果需要网络接口层面的纠错功能,则应用程序可以使用为此目的设计的[传输控制协议(TCP)](https://zh.wikipedia.org/wiki/传输控制协议)或者[流控制传输协议(SCTP)](https://zh.wikipedia.org/wiki/流控制传输协议)
UDP 使用一个简单的、具有最小协议机制的[无连接通信](https://zh.wikipedia.org/wiki/無連接式通訊)模型。UDP 使用[校验和](https://zh.wikipedia.org/wiki/校验和)保证数据完整性,使用[端口号](https://zh.wikipedia.org/wiki/通訊埠)以区分数据发送方和接收方中不同的应用程序。它无需[握手](https://zh.wikipedia.org/wiki/握手_(技术)) 会话,即将不[可靠](https://zh.wikipedia.org/wiki/可靠性_(计算机网络)) 的底层网络直接暴露给了用户的应用程序:不保证消息交付、不保证交付顺序也不保证消息不重复。如果需要网络接口层面的纠错功能,则应用程序可以使用为此目的设计的[传输控制协议(TCP)](https://zh.wikipedia.org/wiki/传输控制协议)或者[流控制传输协议(SCTP)](https://zh.wikipedia.org/wiki/流控制传输协议)

UDP 适用于不需要差错和纠错的应用程序,它的[协议栈](https://zh.wikipedia.org/wiki/协议栈)避免了处理此类问题的开销。对时间敏感的应用程序通常使用 UDP,因为丢弃数据包比等待数据包[重传](https://en.wikipedia.org/wiki/Retransmission_(data_networks))(可能不是[实时操作系统](https://zh.wikipedia.org/wiki/实时计算)可接受的选项)更可取。

Expand Down
4 changes: 2 additions & 2 deletions files/zh-cn/learn/javascript/asynchronous/promises/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ Promise { <state>: "pending" }

## 链式使用 Promise

在你通过 `fetch()` API 得到一个 `Response` 对象的时候,你需要调用另一个函数来获取响应数据。这次,我们想获得JSON格式的响应数据,所以我们会调用 `Response` 对象的 {{domxref("Response/json", "json()")}} 方法。事实上,`json()` 也是异步的,因此我们必须连续调用两个异步函数。
在你通过 `fetch()` API 得到一个 `Response` 对象的时候,你需要调用另一个函数来获取响应数据。这次,我们想获得 JSON 格式的响应数据,所以我们会调用 `Response` 对象的 {{domxref("Response/json", "json()")}} 方法。事实上,`json()` 也是异步的,因此我们必须连续调用两个异步函数。

试试这个:

Expand All @@ -92,7 +92,7 @@ fetchPromise.then( response => {

执行代码后应该会输出“baked beans”(“products.json”中第一个产品的名称)。

等等! 还记得上一篇文章吗?我们好像说过,在回调中调用另一个回调会出现多层嵌套的情况?我们是不是还说过,这种“回调地狱”使我们的代码难以理解?这不是也一样吗,只不过变成了用 `then()` 调用而已?
等等还记得上一篇文章吗?我们好像说过,在回调中调用另一个回调会出现多层嵌套的情况?我们是不是还说过,这种“回调地狱”使我们的代码难以理解?这不是也一样吗,只不过变成了用 `then()` 调用而已?

当然如此。但 Promise 的优雅之处在于 *`then()` 本身也会返回一个 Promise,这个 Promise 将指示 `then()` 中调用的异步函数的完成状态*。这意味着我们可以(当然也应该)把上面的代码改写成这样:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -276,7 +276,7 @@ <h2 id="switch语句">switch 语句</h2>
<li>括号内的表达式或值。</li>
<li>关键字 <code>case</code>, 后跟一个选项的表达式/值,后面跟一个冒号.</li>
<li>如果选择与表达式匹配,则运行一些代码。</li>
<li>一个 <code>break</code> 语句,分号结尾。如果先前的选择与表达式/值匹配,则浏览器在此停止执行代码块,并执行switch语句之后的代码.</li>
<li>一个 <code>break</code> 语句,分号结尾。如果先前的选择与表达式/值匹配,则浏览器在此停止执行代码块,并执行 switch 语句之后的代码。</li>
<li>你可以添加任意的 case 选项(选项 3-5).</li>
<li>关键字 <code>default</code>, 后面跟随和 <code>case</code> 完全相同的代码模式 (选项 3–5), except that <code>default</code> 之后不需要再有选项, 并且您不需要 <code>break</code> 语句, 因为之后没有任何运行代码. 如果之前没有选项匹配,则运行<code>default</code>选项。</li>
</ol>
Expand Down
2 changes: 1 addition & 1 deletion files/zh-cn/mdn/guidelines/writing_style_guide/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -573,7 +573,7 @@ <h2 id="其他参考资料">其他参考资料</h2>

<h3 id="推荐样式指南">推荐样式指南</h3>

<p>如果你在撰写过程中或在格式方面遇到了本文尚未提及的问题,我们建议你参考 <a href="https://docs.microsoft.com/zh-cn/style-guide">微软的风格指南</a>,如果还是不能解决问题,还可参考<a href="https://www.amazon.com/Chicago-Manual-Style-16th/dp/0226104206">芝加哥论文格式</a>,网络上有一份非官方的<a href="https://faculty.cascadia.edu/cma/HIST148/cmscrib.pdf">PDF版本</a></p>
<p>如果你在撰写过程中或在格式方面遇到了本文尚未提及的问题,我们建议你参考 <a href="https://docs.microsoft.com/zh-cn/style-guide">微软的风格指南</a>,如果还是不能解决问题,还可参考<a href="https://www.amazon.com/Chicago-Manual-Style-16th/dp/0226104206">芝加哥论文格式</a>,网络上有一份非官方的<a href="https://faculty.cascadia.edu/cma/HIST148/cmscrib.pdf">PDF 版本</a></p>

<h3 id="推荐词典">推荐词典</h3>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,18 +36,18 @@ <h3 id="参数介绍">参数介绍</h3>
<dd>
<p><code>对象(object)类型</code>. 你可以对过它来指定什么时间 alarm 会开始触发,其值可以是一个具体的时间值或者是一个延时(从 alarm 设置开始)。为了让 alarm 能复现,需要指定 <code>periodInMinutes</code></p>

<p>在 Chrome 浏览器上,除非附件以非打包 (unpackaged) 方式加载,alarm 的创建每分钟不允许超过一次。如果附件尝试设置 <code>delayInMinutes</code> 为小于1的值,alarm 只能在到达1分钟之后才会触发,并且会变成每分钟触发一次。</p>
<p>在 Chrome 浏览器上,除非附件以非打包 (unpackaged) 方式加载,alarm 的创建每分钟不允许超过一次。如果附件尝试设置 <code>delayInMinutes</code> 为小于 1 的值,alarm 只能在到达 1 分钟之后才会触发,并且会变成每分钟触发一次。</p>

<p><code>alarmInfo</code> 对象可以设置以下属性:</p>
</dd>
<dd>
<dl class="reference-values">
<dt><code>when</code>{{optional_inline}}</dt>
<dd><code>double类型</code>。alarm 第一次触发的时间,值为自 1970-01-01 00:00:00 UTC 过去的毫秒数。请使用 <code><a href="/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Date/now">Date.now()</a></code> 来获取 <code>1970-01-01 00:00:00 UTC</code> 到当前时间过去的毫秒数。如果你设置了when属性,请不要设置 delayInMinutes 属性。</dd>
<dd><code>double类型</code>。alarm 第一次触发的时间,值为自 1970-01-01 00:00:00 UTC 过去的毫秒数。请使用 <code><a href="/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Date/now">Date.now()</a></code> 来获取 <code>1970-01-01 00:00:00 UTC</code> 到当前时间过去的毫秒数。如果你设置了 when 属性,请不要设置 delayInMinutes 属性。</dd>
<dt><code>delayInMinutes</code>{{optional_inline}}</dt>
<dd><code>double类型</code>. alarm 设置好到第一次触发之间的分钟数。如果你设置了 <code>delayInMinutes</code> 属性,请不要设置 when 属性。</dd>
<dt><code>periodInMinutes</code>{{optional_inline}}</dt>
<dd><code>double类型</code>. 如果设置此属性,alarm 会从第一次触发开始每隔 <code>periodInMinutes</code> 分钟再次触发。如果你没有设置when及delayInMinutes属性,alarm会在alarm设置好之后periodInMinutes分钟第一次触发。如果periodInMinutes属性没有设置,则alarm只会触发一次</dd>
<dd><code>double类型</code>. 如果设置此属性,alarm 会从第一次触发开始每隔 <code>periodInMinutes</code> 分钟再次触发。如果你没有设置 when 及 delayInMinutes 属性,alarm 会在 alarm 设置好之后 periodInMinutes 分钟第一次触发。如果 periodInMinutes 属性没有设置,则 alarm 只会触发一次</dd>
</dl>
</dd>
</dl>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

<h2 id="问题">问题</h2>

<p>大多数 JavaScript 工具包提供了模拟类似桌面界面行为的客户端小部件库。 滑块,菜单栏,文件列表视图等可以通过 JavaScript,CSS 和 HTML 的组合构建。 由于 HTML 4 规范不提供语义上描述这些窗口小部件的内置标签,因此开发人员通常会使用通用元素(如&lt;div&gt;和&lt;span&gt;)。 虽然这导致了一个看起来像桌面对应的小部件,但标记中通常没有足够的辅助技术可用的语义信息。 网页上的动态内容对于无论何种原因无法查看屏幕的用户来说都是特别有问题的。 股票行情,实时 twitter 消息更新,进度指示器和类似内容以辅助技术(AT)可能不知道的方式修改 DOM。 那就是<a href="/en/ARIA" title="ARIA">ARIA</a>存在的意义。</p>
<p>大多数 JavaScript 工具包提供了模拟类似桌面界面行为的客户端小部件库。滑块,菜单栏,文件列表视图等可以通过 JavaScript,CSS 和 HTML 的组合构建。由于 HTML 4 规范不提供语义上描述这些窗口小部件的内置标签,因此开发人员通常会使用通用元素(如&lt;div&gt;和&lt;span&gt;)。虽然这导致了一个看起来像桌面对应的小部件,但标记中通常没有足够的辅助技术可用的语义信息。网页上的动态内容对于无论何种原因无法查看屏幕的用户来说都是特别有问题的。股票行情,实时 twitter 消息更新,进度指示器和类似内容以辅助技术(AT)可能不知道的方式修改 DOM。那就是<a href="/en/ARIA" title="ARIA">ARIA</a>存在的意义。</p>

<p><em>Example 1: Markup for a tabs widget built without ARIA labeling. There's no information in the markup to describe the widget's form and function.</em></p>

Expand Down Expand Up @@ -35,7 +35,7 @@ <h2 id="问题">问题</h2>

<h2 id="ARIA">ARIA</h2>

<p><a class="external" href="http://www.w3.org/WAI/intro/aria.php" title="http://www.w3.org/WAI/intro/aria.php">WAI-ARIA</a>, 来自 W3C 的网络无障碍计划(<a class="external" href="http://www.w3.org/WAI/" title="http://www.w3.org/WAI/">Web Accessibility Initiative</a>) 的可访问的富互联网应用程序(<strong>Accessible Rich Internet Applications)规范,</strong>提供了一种添加辅助技术(如屏幕阅读器)所需的缺少语义的方法。ARIA 使开发人员可以通过向标记添加特殊属性来更详细地描述其小部件。 旨在填补在动态 web 应用在发现的标准 HTML 标签与桌面式控件之的差距,ARIA 提供了角色和状态以描述大多数常见的 UI 小部件的行为。</p>
<p><a class="external" href="http://www.w3.org/WAI/intro/aria.php" title="http://www.w3.org/WAI/intro/aria.php">WAI-ARIA</a>, 来自 W3C 的网络无障碍计划(<a class="external" href="http://www.w3.org/WAI/" title="http://www.w3.org/WAI/">Web Accessibility Initiative</a>) 的可访问的富互联网应用程序(<strong>Accessible Rich Internet Applications)规范,</strong>提供了一种添加辅助技术(如屏幕阅读器)所需的缺少语义的方法。ARIA 使开发人员可以通过向标记添加特殊属性来更详细地描述其小部件。旨在填补在动态 web 应用在发现的标准 HTML 标签与桌面式控件之的差距,ARIA 提供了角色和状态以描述大多数常见的 UI 小部件的行为。</p>

<p>The ARIA specification is split up into three different types of attributes: roles, states, and properties. Roles describe widgets that aren't otherwise available in HTML 4, such as sliders, menu bars, tabs, and dialogs. Properties describe characteristics of these widgets, such as if they are draggable, have a required element, or have a popup associated with them. States describe the current interaction state of an element, informing the assistive technology if it is busy, disabled, selected, or hidden.</p>

Expand Down
Loading

0 comments on commit 80966d9

Please sign in to comment.