0

我想知道如何定义一个行为如下的“foo”函数:

foo(id); //return document.getElementById(id)
foo(id).value //return document.getElementById(id).value

我相信有可能有这样的功能,因为 jquery 似乎表现相似

$('')
$('').html

谢谢。

感谢您的回答,但我想我以前没有使用通用属性名称。假设它不是“价值”,而是其他自定义属性。

foo(id); //return document.getElementById(id)
foo(id).something //return document.getElementById(id).value
4

2 回答 2

1

valueproperty这个元素的一个。您可以执行以下操作:

function foo(id) { return document.getElementById(id); }

// console.log(foo.id);
// console.log(foo.innerHTML);
// console.log(foo.length);
// console.log(foo.value);
// ...
于 2013-10-02T08:42:35.043 回答
0

我相信它不是“默认方法”,而是 foo(x) 返回一个对象;foo(x).something 返回对象的属性。

例子:

foo = function(a) {
    bar.change(a);
    return bar;
}
bar = {
    something: 0, //default is 0
    change: function(b){
        bar.something = b;
    }
}

foo(3);
// return: Object {something: 3, change: function}

foo(4).something 
//return 4.
于 2014-02-03T06:51:05.337 回答