我理解如果我正在使用BinaryWriter,并且我用“use”而不是“let”声明它,那么当我完成它时它将自动调用“Dispose”方法。这个Dispose是否也在BinaryWriter上调用“Close”,或者我是否也需要调用Close,以确保底层流也被关闭?
function filter(arr, func) {
var result = [];
for (var i = 0; i < arr.length; i++) {
var value = arr[i];
if (func(value)) {
result.push(value);
}
}
return result
}
function inBetween(a, b) {
return function(x) {
return a <= x && x <= b;
}
}
function inArray(arr) {
return function(x) {
console.log(x)
return arr.indexOf(x) != -1;
}
}
var arr = [1, 2, 3, 4, 5, 6, 7];
alert(filter(arr, function(a) {
return a % 2 == 0
})); // 2,4,6
alert( filter(arr, inBetween(3, 6)) ); // 3,4,5,6
alert( filter(arr, inArray([1, 2, 10])) ); // 1,2
答案 0 :(得分:3)
BinaryWriter.Close
州的documentation:
Close的这个实现调用Dispose方法传递一个true 值。
所以不需要它,因为退出Dispose
的范围时会调用use
。
如果您查看source for BinaryWriter,可以看到Close
和Dispose
都只是致电Dispose(true)
。