2.用属性检查模仿接口
1. /*
2. interface Person {
3. function name();
4. function gender();
5. function birthday();
6. }
7. */
8. var man = function (name,gender,birthday){
this.implementsInterfaces = ['Person'];
9. //implements Person
10. };
function implements(object){
for(var i=1;i<arguments.length;i++){
var interfaceName= arguments[i];
var interfaceFound = false;
for(object.implementsInterfaces.length;j++){
if(object.implementsInterfaces[j] == interfaceName){
interfaceFound = true;
break;
}
}
if(!interfaceFound){
return false;
}
}
return true;
};
funtion addPerson(PersonInstance){
if(!implements(PersonInstace,'Person'){
throw new Error("Object doesn't implement a required interface");
}
}
本文介绍了一种使用属性检查来模拟接口实现的方法。通过定义一个Person接口并利用对象的implementsInterfaces属性来验证对象是否实现了所需的接口。这种方法为JavaScript中没有内置接口支持的语言提供了一种接口实现的解决方案。

被折叠的 条评论
为什么被折叠?



