From 738008d5d3d58f6f4f13c710c643228a278bc315 Mon Sep 17 00:00:00 2001 From: ruanyf Date: Thu, 21 Mar 2019 11:29:48 +0800 Subject: [PATCH 001/214] docs(dom): fix node/appendChild #110 --- docs/dom/node.md | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/docs/dom/node.md b/docs/dom/node.md index be0f932..fe5c35d 100644 --- a/docs/dom/node.md +++ b/docs/dom/node.md @@ -295,7 +295,7 @@ test.isConnected // true ### Node.prototype.appendChild() -`appendChild`方法接受一个节点对象作为参数,将其作为最后一个子节点,插入当前节点。该方法的返回值就是插入文档的子节点。 +`appendChild()`方法接受一个节点对象作为参数,将其作为最后一个子节点,插入当前节点。该方法的返回值就是插入文档的子节点。 ```javascript var p = document.createElement('p'); @@ -304,17 +304,16 @@ document.body.appendChild(p); 上面代码新建一个`

`节点,将其插入`document.body`的尾部。 -如果参数节点是 DOM 已经存在的节点,`appendChild`方法会将其从原来的位置,移动到新位置。 +如果参数节点是 DOM 已经存在的节点,`appendChild()`方法会将其从原来的位置,移动到新位置。 ```javascript -var element = document - .createElement('div') - .appendChild(document.createElement('b')); +var div = document.getElementById('myDiv'); +document.body.appendChild(div); ``` -上面代码的返回值是``,而不是`

`。 +上面代码中,插入的是一个已经存在的节点`myDiv`,结果就是该节点会从原来的位置,移动到`document.body`的尾部。 -如果`appendChild`方法的参数是`DocumentFragment`节点,那么插入的是`DocumentFragment`的所有子节点,而不是`DocumentFragment`节点本身。返回值是一个空的`DocumentFragment`节点。 +如果`appendChild()`方法的参数是`DocumentFragment`节点,那么插入的是`DocumentFragment`的所有子节点,而不是`DocumentFragment`节点本身。返回值是一个空的`DocumentFragment`节点。 ### Node.prototype.hasChildNodes() From c80e606e414c5f5dcfeea35efb48a34ec2273ad3 Mon Sep 17 00:00:00 2001 From: ruanyf Date: Thu, 21 Mar 2019 15:49:08 +0800 Subject: [PATCH 002/214] docs(stdlib): fix json/stringify --- docs/stdlib/json.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/stdlib/json.md b/docs/stdlib/json.md index c080ef0..b4250aa 100644 --- a/docs/stdlib/json.md +++ b/docs/stdlib/json.md @@ -332,7 +332,7 @@ RegExp.prototype.toJSON = RegExp.prototype.toString; JSON.stringify(/foo/) // ""/foo/"" ``` -上面代码在正则对象的原型上面部署了`toJSON`方法,将其指向`toString`方法,因此遇到转换成`JSON`时,正则对象就先调用`toJSON`方法转为字符串,然后再被`JSON.stingify`方法处理。 +上面代码在正则对象的原型上面部署了`toJSON()`方法,将其指向`toString()`方法,因此转换成 JSON 格式时,正则对象就先调用`toJSON()`方法转为字符串,然后再被`JSON.stringify()`方法处理。 ## JSON.parse() From 405790c2fe80c0e9a770bee678cb6c75cdc6d4f7 Mon Sep 17 00:00:00 2001 From: ruanyf Date: Sat, 23 Mar 2019 13:32:34 +0800 Subject: [PATCH 003/214] docs(bom): fix window/window.open #111 --- docs/bom/window.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/bom/window.md b/docs/bom/window.md index dc985da..4b75320 100644 --- a/docs/bom/window.md +++ b/docs/bom/window.md @@ -324,7 +324,7 @@ var popup = window.open( ); ``` -上面代码表示,打开的新窗口高度和宽度都为200像素,没有地址栏和滚动条,但有状态栏,允许用户调整大小。 +上面代码表示,打开的新窗口高度和宽度都为200像素,没有地址栏,但有状态栏和滚动条,允许用户调整大小。 第三个参数可以设定如下属性。 From 578a0c0adee46b4493ecbdd78da4d9edfd150e3e Mon Sep 17 00:00:00 2001 From: ruanyf Date: Wed, 10 Apr 2019 12:13:03 +0800 Subject: [PATCH 004/214] =?UTF-8?q?docs(dom):=20fix=20general/=E9=A1=B6?= =?UTF-8?q?=E5=B1=82=E8=8A=82=E7=82=B9=20#117?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/dom/general.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/dom/general.md b/docs/dom/general.md index bf85ba7..0382a94 100644 --- a/docs/dom/general.md +++ b/docs/dom/general.md @@ -35,7 +35,7 @@ document // 整个文档树 ``` -文档的第一层只有一个节点,就是 HTML 网页的第一个标签``,它构成了树结构的根节点(root node),其他 HTML 标签节点都是它的下级节点。 +文档的第一层有两个节点,第一个是文档类型节点(``),第二个是 HTML 网页的顶层容器标签``。后者构成了树结构的根节点(root node),其他 HTML 标签节点都是它的下级节点。 除了根节点,其他节点都有三种层级关系。 From 729c20b4c3106c6c88e26c8f820df44ceff1de75 Mon Sep 17 00:00:00 2001 From: ruanyf Date: Fri, 12 Apr 2019 22:39:39 +0800 Subject: [PATCH 005/214] docs(bom): edit same-origin/jsonp --- docs/bom/same-origin.md | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/docs/bom/same-origin.md b/docs/bom/same-origin.md index e64efa1..23d6c56 100644 --- a/docs/bom/same-origin.md +++ b/docs/bom/same-origin.md @@ -304,16 +304,28 @@ window.onmessage = function(e) { ### JSONP -JSONP 是服务器与客户端跨源通信的常用方法。最大特点就是简单适用,老式浏览器全部支持,服务端改造非常小。 +JSONP 是服务器与客户端跨源通信的常用方法。最大特点就是简单易用,没有兼容性问题,老式浏览器全部支持,服务端改造非常小。 -它的基本思想是,网页通过添加一个` +``` + +注意,请求的脚本网址有一个`callback`参数(`?callback=bar`),用来告诉服务器,客户端的回调函数名称(`bar`)。 + +第二步,服务器收到请求后,拼接一个字符串,将 JSON 数据放在函数名里面,作为字符串返回(`bar({...})`)。 + +第三步,客户端会将服务器返回的字符串,作为代码解析,因为浏览器认为,这是` +``` + +上面代码中,`document.currentScript`就是`