首页 > 变量对象该如何引用自己的this?

变量对象该如何引用自己的this?

<ul>
    <li></li>
    <li></li>
    <li></li>
</ul>

<script>
var a = {

ul:document.getElementsByTagName("ul")[0],
li:this.getElementsByTagName("li")//这样的话,会报错,//如果只是this会指向window,该如何把this引用变量a

}

console.log(a.li)
</script>


var a = {
    ul: document.getElementsByTagName("ul")[0],
    getLi: function() {
        return this.ul.getElementsByTagName("li");
    }
};

li属性变成getLi方法,这样,方法里的this就指向了方法的拥有者a。其实,要获取已有属性一般都会用方法而不是定义一个新属性来获得。

另外,也可以不使用this

var ul = document.getElementsByTagName("ul")[0];
var a = {
    getUl: function() {
        return ul;
    },
    getLi: function() {
        return ul.getElementsByTagName("li");
    }
};
【热门文章】
【热门文章】