Hi,
I need to somehow use the Java Byte datatype in Javascript. It's defined as follows:
- Max value (2^7) -1
- Min value -2^7
So that's an effective range of values -128 -> 127
In Java: byte b = (byte) x, will convert x to fall within this range, for example:
b = (byte) 127 = 127
b = (byte) -193 = 63
b = (byte) 288 = 32
I need to efficiently wrap this into a Javascript function so I can convert an input to a value in this range.
I can't work out a formula to do it
(X mod 128) - 128 comes close for some values, but fails outside on others.
Anyone know how to convert any -/+ number into this range correctly. It's probably really obvious
Here's some test case values, X is on the left with values +/- 300, and the Java byte value is on the right.
Thanks for any help.
I need to somehow use the Java Byte datatype in Javascript. It's defined as follows:
- Max value (2^7) -1
- Min value -2^7
So that's an effective range of values -128 -> 127
In Java: byte b = (byte) x, will convert x to fall within this range, for example:
b = (byte) 127 = 127
b = (byte) -193 = 63
b = (byte) 288 = 32
I need to efficiently wrap this into a Javascript function so I can convert an input to a value in this range.
I can't work out a formula to do it

Anyone know how to convert any -/+ number into this range correctly. It's probably really obvious

Here's some test case values, X is on the left with values +/- 300, and the Java byte value is on the right.
Code:
-300 : -44
-299 : -43
-298 : -42
-297 : -41
-296 : -40
-295 : -39
-294 : -38
-293 : -37
-292 : -36
-291 : -35
-290 : -34
-289 : -33
-288 : -32
-287 : -31
-286 : -30
-285 : -29
-284 : -28
-283 : -27
-282 : -26
-281 : -25
-280 : -24
-279 : -23
-278 : -22
-277 : -21
-276 : -20
-275 : -19
-274 : -18
-273 : -17
-272 : -16
-271 : -15
-270 : -14
-269 : -13
-268 : -12
-267 : -11
-266 : -10
-265 : -9
-264 : -8
-263 : -7
-262 : -6
-261 : -5
-260 : -4
-259 : -3
-258 : -2
-257 : -1
-256 : 0
-255 : 1
-254 : 2
-253 : 3
-252 : 4
-251 : 5
-250 : 6
-249 : 7
-248 : 8
-247 : 9
-246 : 10
-245 : 11
-244 : 12
-243 : 13
-242 : 14
-241 : 15
-240 : 16
-239 : 17
-238 : 18
-237 : 19
-236 : 20
-235 : 21
-234 : 22
-233 : 23
-232 : 24
-231 : 25
-230 : 26
-229 : 27
-228 : 28
-227 : 29
-226 : 30
-225 : 31
-224 : 32
-223 : 33
-222 : 34
-221 : 35
-220 : 36
-219 : 37
-218 : 38
-217 : 39
-216 : 40
-215 : 41
-214 : 42
-213 : 43
-212 : 44
-211 : 45
-210 : 46
-209 : 47
-208 : 48
-207 : 49
-206 : 50
-205 : 51
-204 : 52
-203 : 53
-202 : 54
-201 : 55
-200 : 56
-199 : 57
-198 : 58
-197 : 59
-196 : 60
-195 : 61
-194 : 62
-193 : 63
-192 : 64
-191 : 65
-190 : 66
-189 : 67
-188 : 68
-187 : 69
-186 : 70
-185 : 71
-184 : 72
-183 : 73
-182 : 74
-181 : 75
-180 : 76
-179 : 77
-178 : 78
-177 : 79
-176 : 80
-175 : 81
-174 : 82
-173 : 83
-172 : 84
-171 : 85
-170 : 86
-169 : 87
-168 : 88
-167 : 89
-166 : 90
-165 : 91
-164 : 92
-163 : 93
-162 : 94
-161 : 95
-160 : 96
-159 : 97
-158 : 98
-157 : 99
-156 : 100
-155 : 101
-154 : 102
-153 : 103
-152 : 104
-151 : 105
-150 : 106
-149 : 107
-148 : 108
-147 : 109
-146 : 110
-145 : 111
-144 : 112
-143 : 113
-142 : 114
-141 : 115
-140 : 116
-139 : 117
-138 : 118
-137 : 119
-136 : 120
-135 : 121
-134 : 122
-133 : 123
-132 : 124
-131 : 125
-130 : 126
-129 : 127
-128 : -128
-127 : -127
-126 : -126
-125 : -125
-124 : -124
-123 : -123
-122 : -122
-121 : -121
-120 : -120
-119 : -119
-118 : -118
-117 : -117
-116 : -116
-115 : -115
-114 : -114
-113 : -113
-112 : -112
-111 : -111
-110 : -110
-109 : -109
-108 : -108
-107 : -107
-106 : -106
-105 : -105
-104 : -104
-103 : -103
-102 : -102
-101 : -101
-100 : -100
-99 : -99
-98 : -98
-97 : -97
-96 : -96
-95 : -95
-94 : -94
-93 : -93
-92 : -92
-91 : -91
-90 : -90
-89 : -89
-88 : -88
-87 : -87
-86 : -86
-85 : -85
-84 : -84
-83 : -83
-82 : -82
-81 : -81
-80 : -80
-79 : -79
-78 : -78
-77 : -77
-76 : -76
-75 : -75
-74 : -74
-73 : -73
-72 : -72
-71 : -71
-70 : -70
-69 : -69
-68 : -68
-67 : -67
-66 : -66
-65 : -65
-64 : -64
-63 : -63
-62 : -62
-61 : -61
-60 : -60
-59 : -59
-58 : -58
-57 : -57
-56 : -56
-55 : -55
-54 : -54
-53 : -53
-52 : -52
-51 : -51
-50 : -50
-49 : -49
-48 : -48
-47 : -47
-46 : -46
-45 : -45
-44 : -44
-43 : -43
-42 : -42
-41 : -41
-40 : -40
-39 : -39
-38 : -38
-37 : -37
-36 : -36
-35 : -35
-34 : -34
-33 : -33
-32 : -32
-31 : -31
-30 : -30
-29 : -29
-28 : -28
-27 : -27
-26 : -26
-25 : -25
-24 : -24
-23 : -23
-22 : -22
-21 : -21
-20 : -20
-19 : -19
-18 : -18
-17 : -17
-16 : -16
-15 : -15
-14 : -14
-13 : -13
-12 : -12
-11 : -11
-10 : -10
-9 : -9
-8 : -8
-7 : -7
-6 : -6
-5 : -5
-4 : -4
-3 : -3
-2 : -2
-1 : -1
0 : 0
1 : 1
2 : 2
3 : 3
4 : 4
5 : 5
6 : 6
7 : 7
8 : 8
9 : 9
10 : 10
11 : 11
12 : 12
13 : 13
14 : 14
15 : 15
16 : 16
17 : 17
18 : 18
19 : 19
20 : 20
21 : 21
22 : 22
23 : 23
24 : 24
25 : 25
26 : 26
27 : 27
28 : 28
29 : 29
30 : 30
31 : 31
32 : 32
33 : 33
34 : 34
35 : 35
36 : 36
37 : 37
38 : 38
39 : 39
40 : 40
41 : 41
42 : 42
43 : 43
44 : 44
45 : 45
46 : 46
47 : 47
48 : 48
49 : 49
50 : 50
51 : 51
52 : 52
53 : 53
54 : 54
55 : 55
56 : 56
57 : 57
58 : 58
59 : 59
60 : 60
61 : 61
62 : 62
63 : 63
64 : 64
65 : 65
66 : 66
67 : 67
68 : 68
69 : 69
70 : 70
71 : 71
72 : 72
73 : 73
74 : 74
75 : 75
76 : 76
77 : 77
78 : 78
79 : 79
80 : 80
81 : 81
82 : 82
83 : 83
84 : 84
85 : 85
86 : 86
87 : 87
88 : 88
89 : 89
90 : 90
91 : 91
92 : 92
93 : 93
94 : 94
95 : 95
96 : 96
97 : 97
98 : 98
99 : 99
100 : 100
101 : 101
102 : 102
103 : 103
104 : 104
105 : 105
106 : 106
107 : 107
108 : 108
109 : 109
110 : 110
111 : 111
112 : 112
113 : 113
114 : 114
115 : 115
116 : 116
117 : 117
118 : 118
119 : 119
120 : 120
121 : 121
122 : 122
123 : 123
124 : 124
125 : 125
126 : 126
127 : 127
128 : -128
129 : -127
130 : -126
131 : -125
132 : -124
133 : -123
134 : -122
135 : -121
136 : -120
137 : -119
138 : -118
139 : -117
140 : -116
141 : -115
142 : -114
143 : -113
144 : -112
145 : -111
146 : -110
147 : -109
148 : -108
149 : -107
150 : -106
151 : -105
152 : -104
153 : -103
154 : -102
155 : -101
156 : -100
157 : -99
158 : -98
159 : -97
160 : -96
161 : -95
162 : -94
163 : -93
164 : -92
165 : -91
166 : -90
167 : -89
168 : -88
169 : -87
170 : -86
171 : -85
172 : -84
173 : -83
174 : -82
175 : -81
176 : -80
177 : -79
178 : -78
179 : -77
180 : -76
181 : -75
182 : -74
183 : -73
184 : -72
185 : -71
186 : -70
187 : -69
188 : -68
189 : -67
190 : -66
191 : -65
192 : -64
193 : -63
194 : -62
195 : -61
196 : -60
197 : -59
198 : -58
199 : -57
200 : -56
201 : -55
202 : -54
203 : -53
204 : -52
205 : -51
206 : -50
207 : -49
208 : -48
209 : -47
210 : -46
211 : -45
212 : -44
213 : -43
214 : -42
215 : -41
216 : -40
217 : -39
218 : -38
219 : -37
220 : -36
221 : -35
222 : -34
223 : -33
224 : -32
225 : -31
226 : -30
227 : -29
228 : -28
229 : -27
230 : -26
231 : -25
232 : -24
233 : -23
234 : -22
235 : -21
236 : -20
237 : -19
238 : -18
239 : -17
240 : -16
241 : -15
242 : -14
243 : -13
244 : -12
245 : -11
246 : -10
247 : -9
248 : -8
249 : -7
250 : -6
251 : -5
252 : -4
253 : -3
254 : -2
255 : -1
256 : 0
257 : 1
258 : 2
259 : 3
260 : 4
261 : 5
262 : 6
263 : 7
264 : 8
265 : 9
266 : 10
267 : 11
268 : 12
269 : 13
270 : 14
271 : 15
272 : 16
273 : 17
274 : 18
275 : 19
276 : 20
277 : 21
278 : 22
279 : 23
280 : 24
281 : 25
282 : 26
283 : 27
284 : 28
285 : 29
286 : 30
287 : 31
288 : 32
289 : 33
290 : 34
291 : 35
292 : 36
293 : 37
294 : 38
295 : 39
296 : 40
297 : 41
298 : 42
299 : 43
Thanks for any help.