合并两个对象的函数的TypeScript定义
给定一个函数,该函数接收两个不同类型的对象,即对象a和对象B,将两个对象合并为一个,并返回该合并对象:合并两个对象的函数的TypeScript定义,typescript,types,merge,declaration,Typescript,Types,Merge,Declaration,给定一个函数,该函数接收两个不同类型的对象,即对象a和对象B,将两个对象合并为一个,并返回该合并对象: /** * @description Merge the contents of two objects into a single object * @param {Object} target The target object of the merge * @param {Object} ex The object that is merged with target * @
/**
* @description Merge the contents of two objects into a single object
* @param {Object} target The target object of the merge
* @param {Object} ex The object that is merged with target
* @return {Object} The target object
* @example
* var A = {a: function() {console.log(this.a}};
* var B = {b: function() {console.log(this.b}};
*
* pc.extend(A,B);
* A.a();
* // logs "a"
* A.b();
* // logs "b"
*/
这是我想到的,但不知何故,我不确定这是否正确:
function extend<T>(target: T, ex: T): T
功能扩展(目标:T,ex:T):T
函数声明应该是什么样子?我应该为此使用泛型类型吗?如何定义要返回的合并类型?您描述的是一种交叉点类型,是多种类型的组合。您的场景甚至在中进行了解释 在本例中,需要引入第二个泛型参数来表示另一种类型。您的签名应如下所示:
function extend<T, U>(target: T, ex: U): T & U
功能扩展(目标:T,ex:U):T&U
您描述的是一种交叉口类型,是多种类型的组合。您的场景甚至在中进行了解释
在本例中,需要引入第二个泛型参数来表示另一种类型。您的签名应如下所示:
function extend<T, U>(target: T, ex: U): T & U
功能扩展(目标:T,ex:U):T&U
谢谢,我觉得有点傻。我已经看过文档中的“混合”和“声明合并”部分。谢谢你给我指明了正确的方向。我相信这个问题和你的答案对其他像我这样的打字新手仍然有用。谢谢,我觉得有点傻。我已经看过文档中的“混合”和“声明合并”部分。谢谢你给我指明了正确的方向。我相信这个问题和你的答案对像我这样的打字新手仍然有用。