Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xjbieke
axios
提交
d49cb345
A
axios
项目概览
xjbieke
/
axios
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
A
axios
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
d49cb345
编写于
8月 27, 2014
作者:
M
Matt Zabriskie
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Updating forEach to handle non iterable values
上级
0c7236b2
变更
7
展开全部
隐藏空白更改
内联
并排
Showing
7 changed file
with
113 addition
and
42 deletion
+113
-42
dist/axios.amd.js
dist/axios.amd.js
+19
-9
dist/axios.amd.min.js
dist/axios.amd.min.js
+19
-9
dist/axios.js
dist/axios.js
+19
-9
dist/axios.min.js
dist/axios.min.js
+19
-9
lib/forEach.js
lib/forEach.js
+15
-2
lib/transformData.js
lib/transformData.js
+0
-4
test/unit/forEach.js
test/unit/forEach.js
+22
-0
未找到文件。
dist/axios.amd.js
浏览文件 @
d49cb345
此差异已折叠。
点击以展开。
dist/axios.amd.min.js
浏览文件 @
d49cb345
此差异已折叠。
点击以展开。
dist/axios.js
浏览文件 @
d49cb345
此差异已折叠。
点击以展开。
dist/axios.min.js
浏览文件 @
d49cb345
此差异已折叠。
点击以展开。
lib/forEach.js
浏览文件 @
d49cb345
'
use strict
'
;
function
isArrayLike
(
obj
)
{
return
obj
.
constructor
===
Array
||
typeof
obj
.
callee
===
'
function
'
;
}
/**
* Iterate over an Array or an Object invoking a function for each item.
*
...
...
@@ -13,12 +18,20 @@
* @param {Function} fn The callback to invoke for each item
*/
module
.
exports
=
function
forEach
(
obj
,
fn
)
{
if
(
typeof
obj
!==
'
object
'
)
{
// Don't bother if no value provided
if
(
obj
===
null
||
typeof
obj
===
'
undefined
'
)
{
return
;
}
var
isArray
=
isArrayLike
(
obj
);
// Force an array if not already something iterable
if
(
typeof
obj
!==
'
object
'
&&
!
isArray
)
{
obj
=
[
obj
];
}
// Iterate over array values
if
(
obj
.
constructor
===
Array
||
typeof
obj
.
callee
===
'
function
'
)
{
if
(
isArray
)
{
for
(
var
i
=
0
,
l
=
obj
.
length
;
i
<
l
;
i
++
)
{
fn
.
call
(
null
,
obj
[
i
],
i
,
obj
);
}
...
...
lib/transformData.js
浏览文件 @
d49cb345
...
...
@@ -11,10 +11,6 @@ var forEach = require('./forEach');
* @returns {*} The resulting transformed data
*/
module
.
exports
=
function
transformData
(
data
,
headers
,
fns
)
{
if
(
typeof
fns
===
'
function
'
)
{
return
fns
(
data
,
headers
);
}
forEach
(
fns
,
function
(
fn
)
{
data
=
fn
(
data
,
headers
);
});
...
...
test/unit/forEach.js
浏览文件 @
d49cb345
...
...
@@ -29,5 +29,27 @@ module.exports = {
test
.
equal
(
keys
,
'
bar
'
);
test
.
equal
(
vals
,
6
);
test
.
done
();
},
testUndefined
:
function
(
test
)
{
var
count
=
0
;
forEach
(
undefined
,
function
()
{
count
++
;
});
test
.
equals
(
count
,
0
);
test
.
done
();
},
testFunction
:
function
(
test
)
{
var
count
=
0
;
forEach
(
function
()
{},
function
()
{
count
++
;
})
test
.
equals
(
count
,
1
);
test
.
done
();
}
};
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录