/**
* @author wuwg
* @param obj 检索的对象 (必须)
* @param target 检索的目标 (必须)
* @param objName 检索对象的名称 (必须)
* @returns {*}
*/
var findTarget= (function(func){
return function(obj,target,objName){
// 声明返回的对象, 默认的关联url路径,和执行的查询的函数
var _returnObj=[],_connect='',_func=func;
_func(obj,target,objName,_connect,_returnObj,_func);
return _returnObj;
}
})(
/**
* @function 匿名查询函数
* @param obj 检索的对象 (必须)
* @param target 检索的目标 (必须)
* @param objName 检索对象的名称 (必须)
* @param connect urlf关联
* @param _returnObj 返回值
* @param func 作为参数传递的函数
* @returns {*}
*/
function (obj,target,objName,connect,_returnObj,func){
var _connect=connect;
var _func=func;
for(var _name in obj ){
if(obj[_name]===target){
// 添加到返回的结果总去
_returnObj.push({
url: objName+_connect+'.'+_name,
value:target,
obj:obj
});
}else if(typeof obj[_name] =='object') {
// 执行下一次循环
func( obj[_name] ,target,objName,(_connect+('.'+_name)),_returnObj, _func)
}else {
// 不管
}
}
});
-
« 上一篇:
angular 问题记录1
-
Office 2007 ppt 打字卡的解决方案
:下一篇 »