反射
JavaScript中能利用 for in 语句实现反射,如:
// 下面这段语句遍历obj对象的所有属性和方法
for (var p in obj) {
if (typeof(obj[p]=="function") {
obj[p](); // 执行函数,也还可以传参数
} else {
alert(obj[p]);
}
}
obj.函数名(参数列表); // 这样执行函数,可以使用下面的反射形式来代替
obj["函数名"](参数列表);
26. 过滤数组的重复值
/**
* 返回没有重复值的新数组,原数组不改变
* @return 返回过滤重复值后的新数组
*
* @example
* var arr = ['a', 'b', 'c', 'd', 'c', null];
* var arr2 = arr.unique(); // arr2 为: ['a', 'b', 'd', 'c', null]
*/
Array.prototype.unique = function() {
var result = [];
// 注意学习此算法
for (var i=0,l=this.length; i<l; i++) {
for (var j=i+1; j<l; j++) {
if (this[i] === this[j]) j = ++i;
}
result.push(this[i]);
}
return result;
};
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类