javascript - 变量对象该如何引用自己的this?
巴扎黑
巴扎黑 2017-04-10 17:49:48
[JavaScript讨论组]
<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>

巴扎黑
巴扎黑

全部回复(1)
阿神
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");
    }
};
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号