[].every(i => i instanceof Node) // -> true
Tại sao mọi phương thức trên mảng trong JavaScript trả lại đúng khi mảng trống. Tôi đang cố gắng thực hiện xác nhận kiểu như vậy ...Tại sao Array.prototype.every trả về true trên một mảng trống?
let isT = (val, str) => typeof val === str, is = {},
nT = (val, str) => !isT(val, str);
is.Undef = (...args) => args.every(o => isT(o, 'undefined'));
is.Def = (...args) => args.every(o => nT(o, 'undefined'));
is.Null = (...args) => args.every(o => o === null);
is.Node = (...args) => args.every(o => o instanceof Node);
is.NodeList = (...args) => Array.from(args).every(n => is.Node(n));
nhưng những điều này vẫn trở lại đúng ngay cả khi không có đối số nào được chuyển cho họ.
không biết câu trả lời nhưng bạn có thể sử dụng 'is.Undef = (... args) => args.length && args.every (o => isT (o, 'undefined')) ; ' – synthet1c