美文网首页
如何获取jQuery对象类型字符串的值

如何获取jQuery对象类型字符串的值

作者: 哪树繁花 | 来源:发表于2017-10-20 15:11 被阅读12次

    标题可能有点绕,大致意思就是通过$(),把一个字符串str = "hello"转成了jQuery对象,如何获取到原字符串的值。为什么会有这种需求呢?因为今天封装一个处理字符串的jQuery方法时发现了这个问题。

    $.fn.extend({
        removeLeftSpace: function(){
            return this.replace(/^\s+/g, "");
        }
    })
    
    var str = "  hello   world   ";
    $(str).removeLeftSpace();
    

    方法里的this是jQuery对象,并没有原生的replace方法,所以如何获取到原串成了主要问题。网上查了一下也没有查到方法,可能是真的没这种需求吧,于是就自己琢磨了一下,既然字符串被封装成了jQuery对象,那么原串肯定还在jQuery对象里,那就看下他的结构,直接输出就好了。

    $.fn.extend({
        removeLeftSpace: function(){
            console.log(this);
        }
    })
    
    var str = "  hello   world   ";
    $(str).removeLeftSpace();
    

    结果很喜人,找到了原串的位置,那么下面就直接把他提取出来就好了,通过键值对中的key(selector)就行了。

    $.fn.extend({
        removeLeftSpace: function(){
            console.log(this.selector);
        }
    })
    
    var str = "  hello   world   ";
    $(str).removeLeftSpace();
    

    相关文章

      网友评论

          本文标题:如何获取jQuery对象类型字符串的值

          本文链接:https://www.haomeiwen.com/subject/uykvuxtx.html