关于js链式调用的实现问题?

先分解下,我们对$函数已经很熟悉了,他通常返回一个HTML元素或者HTML元素的集合,如下所示:

function $(){
    var elements = [];
    for(var i = 0, len = arguments.length; i < len; i++){
        var element = els[i];
        if(typeof element === 'string'){
            element = document.getElementById(element);
        }
        elements.push(element);
    }
    return elements;
}

请问这个els[i]是可以这样缩写?

还有这样链式调用的时候诸如
$('.a').hide().$('.a').show()

怎么这些方法的队列是怎么存到 elements.push(element) 中的?

阅读 1.7k
1 个回答

你指的$是jQuery吧,需要指明上下文才能解答啊

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题