首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

内嵌步骤的调用

2013-01-07 
内嵌方法的调用var afunction(obj){bfunction(attribute,value){eval(obj. + attribute++value.toS

内嵌方法的调用

var a=function(obj){
    b=function(attribute,value){
        eval("obj." + attribute+"="+value.toString());
        return obj;
    };
};

var o={name:"小明",age:"16"};
var o2=a(o).b("age","18");
alert(o2.age);

如上代码调用了a中的b方法,但无效果,将
var o2=a(o).b("age","18");
// 改成
var o2=new a(o).b("age","18");

后效果有了
把a看作一个类,需实例化才能调用内部方法这点能理解,但类似于jquery这种不用实例化也能调用,它是怎么实现的?
譬如
$("#div1").css("width","300px");

[解决办法]
var a=function(obj){

return {
    b : function(attribute,value){
        eval("obj." + attribute+"="+value.toString());
        return obj;
        }
    }
};

var o={name:"小明",age:"16"};
a(o).b("age","18")

热点排行