I am trying to convert bytes to integer number value its working for non negative value but not for negative value. Here is my code:-
var byteArrayToLong = function (byteArray) {
var value = 0;
for (var i = byteArray.length - 1; i >= 0; i--) {
value = (value * 256) + byteArray[i];
}
console.log(value);
return value;
};
byteArrayToLong([158,175,59,0]); //3911582 correct
byteArrayToLong([229,93,138,255])//4287258085 incorrect the correct value is (i.e from c# BitConverter.ToInt32() method) -7709211
signed integer, your code emulates anunsigned integer.