切片管不包括角数组中的最后一个数字。
我正在做这个项目,需要有角度的切片管。
以下是相同的代码:
<p>{{ [1,2,3,4,5,6] | slice:0:-1 }}</p>在这种情况下,输出是1,2,3,4,5
我知道用角切片管,不含第二个参数。
没有错误,我期待1,2,3,4,5,6的值
发布于 2019-08-25 20:09:09
角SlicePipe行为基于JavaScript API Array.prototype.slice()和String.prototype.slice()的预期行为。end参数slice提取,但不包括end。
JavaScript实例
let a = [1, 2, 3, 4, 5, 6];
a.slice(0, -1);输出
[1, 2, 3, 4, 5]
用于SlicePipe的角度文档
创建一个新的数组或字符串,其中包含元素的子集(切片)。 使用说明 所有行为都基于JavaScript、API、
Array.prototype.slice()和String.prototype.slice()的预期行为。 在Array上操作时,即使返回所有元素,返回的Array也始终是副本。 当对空白值进行操作时,管道将返回空白值。
arr.slice([begin[, end]]) begin -基于零的索引开始提取. end -基于零的索引,在此之前结束提取。
slice提取到但不包括end。
发布于 2019-08-25 20:31:01
我知道用角切片管,不含第二个参数。
你的说法是不正确的。角有SlicePipe的第二个参数。第一个参数是start,第二个参数(可选)是end。(来源:文档)以下是SlicePipe接受的内容
{{ value_expression | slice : start [ : end ] }}所有行为都基于JavaScript API Array.prototype.slice()和String.prototype.slice()的预期行为。
您可以确切地看到,当您更改管道start/end值时,这里会发生什么。
如果您也想包含最后一个值,就不要包含一个end值
<p>{{ [1,2,3,4,5,6] | slice: 0 }}</p>如果不传递start值,则slice以0开头。考虑到这一点,我们可以重写上面的代码
<p>{{ [1,2,3,4,5,6] | slice }}</p>https://stackoverflow.com/questions/57649311
复制相似问题