流类型和合并 json 个对象
Flow type and merging json objects
假定以下类型的代码(例如,使用 lodash 或明确地像此处一样):
function extend(base, overwrite) {
for (var key in overwrite)
base[key] = overwrite[key];
return base;
}
var first = extend({
a: 1
}, {
b: 2
});
var second = extend({
c: 3
}, {
d: 4
});
console.log(first.a + first.b + second.c + second.d);
我如何向 Flowtype 解释这实际上没问题?
试着把它放在函数声明的正上方:
declare function extend<A, B>(a: A, b: B): A & B
假定以下类型的代码(例如,使用 lodash 或明确地像此处一样):
function extend(base, overwrite) {
for (var key in overwrite)
base[key] = overwrite[key];
return base;
}
var first = extend({
a: 1
}, {
b: 2
});
var second = extend({
c: 3
}, {
d: 4
});
console.log(first.a + first.b + second.c + second.d);
我如何向 Flowtype 解释这实际上没问题?
试着把它放在函数声明的正上方:
declare function extend<A, B>(a: A, b: B): A & B