我一直在免费代码阵营上做这个课程几个小时,然而,我找到了一个我不理解的解决方案,并且我试图在每行记录,因为我实现并理解它以供将来参考和我已经理解了一些行,但我无法理解这段代码的某些部分:
<rewrite>
<rules>
<rule name="Force HTTPS" enabled="true">
<match url="(.*)" ignoreCase="false" />
<conditions>
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" appendQueryString="true" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
我已经检查了文档,我发现很难理解这个示例中的代码看起来非常不同。我真的很感谢你的帮助!
答案 0 :(得分:1)
arr
是指传递给destroyer
函数的第一个参数;在这种情况下,数组[1, 2, 3, 1, 2, 3]
arr.filter
正在使用Array.filter
方法创建&#34;过滤&#34;数组的版本只包含那些通过&#34; test&#34;由function(element) { return args.indexOf(element) === -1; }
Array.indexOf
检查切片的args数组(您正确识别为等于[2, 3]
)是否包含给定的element
。因为indexOf
在找不到元素时返回-1,所以检查该值等同于检查指定的元素是否在数组中所有这些的结果 - 以及函数destroy
的返回值 - 将是数组[1, 1]
,表示传递给destroy
的数组的过滤版本,其中包含所有值不等于传递给destroy的其他值。
答案 1 :(得分:0)
Array.slice是数组prototype
的一部分;
prototype
方法只能在类的实例上访问。
var arr = ['a', 'b', 'c', 'd'];
// [] is JavaScript shorthand for instantiating an Array object.
// this means that you can call:
arr.slice(someArg1);
arry.splice(someArg2);