请教一下js 怎么写一个isBytes判断对象是否是字节数组的方法
function isByteArray(arr){
return arr instanceof Array && arr.findIndex(item => item < -127 || item > 128) ==-1;
}
1. JavaScript数组的元素是不限定类型的,除非是TypeArray。
2. 所以思路就可以先判断入参是不是数组类型,再判断元素中是否有超出Byte范围的值。
const buffer = new ArrayBuffer(8);
如果一个对象是ArrayBuffer,那么 buffer instanceof ArrayBuffer 就会等于true;
function isByteArray(target){
return target instanceof ArrayBuffer;
}
function isByteArray(arr) {
if (Array.isArray(arr)) {
var temp = true, k = 0;
while (temp && k < arr.length) {
if (arr[k] < -127 || arr[k] > 128) {
temp = false;
return temp;
}
k++;
}
return temp;
}
return false;
}