Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery:数组的重复检查函数_Jquery_Arrays_Filter - Fatal编程技术网

jQuery:数组的重复检查函数

jQuery:数组的重复检查函数,jquery,arrays,filter,Jquery,Arrays,Filter,我有一个全局数组来保存我的css+js包含 我正在为以下问题寻找最简单的解决方案: 一个允许添加更多include(作为字符串)的函数,例如addIncludes(“script1.js,script2.js,style1.css,style2.css”) 该函数应自动过滤重复条目 例如: var myIncludes = []; // add includes addIncludes("script1.js,script2.js,style1.css,style2.css"); add

我有一个全局数组来保存我的css+js包含 我正在为以下问题寻找最简单的解决方案:

  • 一个允许添加更多include(作为字符串)的函数,例如
    addIncludes(“script1.js,script2.js,style1.css,style2.css”)
  • 该函数应自动过滤重复条目
例如:

var myIncludes = [];

// add includes 
addIncludes("script1.js,script2.js,style1.css,style2.css");
addIncludes("script3.js,script4.js,style1.css,style2.css");

so myIncludes should be:
["script1.js","script2.js","style1.css","style2.css","script3.js","script4.js"]
你知道最优雅的方式是什么吗?
thx

这不是对你问题的回答,但我希望它能有所帮助

看起来您正计划通过JQuery加载样式表。如果是这样,请记住,这意味着在页面的其余部分完成加载并显示之前,不会加载样式。这将导致页面最初在浏览器中加载时没有任何样式,然后在加载样式后几秒钟更改

如果只使用普通的HTML方法加载样式表,您可能会获得更好的用户体验—即在文档顶部加载

这一点对于脚本来说可能不太重要,但对于样式表,我可以肯定地说


希望这有帮助(即使它不能回答您的问题)。

您可以使用
inArray
功能来避免添加重复项:

addIncludes(inc) {
  $.each(inc.split(','), function(){
    if ($.inArray(this, myIncludes) === -1) {
      myIncludes.push(this);
    }
  });
}
可能重复的