频道栏目
首页 > 程序开发 > web前端 > HTML/CSS > 正文
function里的this指向问题代码分析
2018-06-12 15:30:31      个评论    来源:dreamjay1997的博客  
收藏   我要投稿

有时候我会把事件函数里的this当成出发该事件的dom对象,其实不是这样的除非用call和aply去改变this指向,否则this是指向window的

例如下面代码:

<form action="#">  
        邮编:<input type="text" name = "" onkeyup = "checkDate(this.value)">  
    </form>  
    <script>  
        function checkDate(value){  
            if(value.length > 6){  
                alert('邮编长度不能超过六位');  
                let textValue = value.slice(0, 6);  
                console.log(this);  
                this.value = textValue;  
            }  
        }  
    </script>  

结果为:

\

但如果用call改变this情况就不一样了,this会指向触发该事件的dom对象

<form action="#">  
        邮编:<input type="text" name = "" onkeyup = "checkDate.call(this,this.value)">  
    </form>  
    <script>  
        function checkDate(value){  
            if(value.length > 6){  
                alert('邮编长度不能超过六位');  
                let textValue = value.slice(0, 6);  
                console.log(this);  
                this.value = textValue;  
            }  
        }  
    </script>  

\

点击复制链接 与好友分享!回本站首页
上一篇:VUE获取当前点击元素的方法
下一篇:自定义log函数实例
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站