javascript function中 return {fun1:fun1},return {fun1:fun1}是什么意思?

时间:2022-06-01 20:18:32
var sh=function(){
function fun1(){this.fun1()}
fun1.prototype={
fun1:function(){.....}
}
return {fun1:fun1}
}();
好不明白return {fun1:fun1}是什么意思?求助???

2 个解决方案

#1


分开来看:
{fun1: fun1},等价于  {"fun1": fun1} 这是一个对象直接量,冒号前的fun1是对象的属性名,冒号后面的fun1是对象值(值为对fun1函数的引用)。
var fn = function() {
function fn1() { alert('DEMO'); }
return {fn2: fn1};
}
fn().fn2(); //DEMO

#2


引用 1 楼  的回复:
分开来看:
{fun1: fun1},等价于 {"fun1": fun1} 这是一个对象直接量,冒号前的fun1是对象的属性名,冒号后面的fun1是对象值(值为对fun1函数的引用)。
JScript code
var fn = function() {
    function fn1() { alert('DEMO'); }
    return {fn2: fn1};
}
fn().……



顶下

#1


分开来看:
{fun1: fun1},等价于  {"fun1": fun1} 这是一个对象直接量,冒号前的fun1是对象的属性名,冒号后面的fun1是对象值(值为对fun1函数的引用)。
var fn = function() {
function fn1() { alert('DEMO'); }
return {fn2: fn1};
}
fn().fn2(); //DEMO

#2


引用 1 楼  的回复:
分开来看:
{fun1: fun1},等价于 {"fun1": fun1} 这是一个对象直接量,冒号前的fun1是对象的属性名,冒号后面的fun1是对象值(值为对fun1函数的引用)。
JScript code
var fn = function() {
    function fn1() { alert('DEMO'); }
    return {fn2: fn1};
}
fn().……



顶下