 # JavaScript: Reverse the bits of a given 16 bits unsigned short integer

## JavaScript Basic: Exercise-138 with Solution

Write a JavaScript program to reverse the bits of a given 16 bits unsigned short integer.

Sample Solution:

HTML Code:

``````<!DOCTYPE html>
<html>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>Reverse the bits of a given 16 bits unsigned short integer</title>
<body>

</body>
</html>
```
```

JavaScript Code:

``````function sixteen_bits_reverse(num) {
var result = 0;
for (var i = 0; i < 16; i++)
{
result = result * 2 + (num % 2);
num = Math.floor(num / 2);
}
return result;
}
console.log(sixteen_bits_reverse(12345));
console.log(sixteen_bits_reverse(10));
console.log(sixteen_bits_reverse(5));
``````

Sample Output:

```39948
20480
40960
```

Flowchart: ES6 Version:

``````function sixteen_bits_reverse(num) {
let result = 0;
for (let i = 0; i < 16; i++)
{
result = result * 2 + (num % 2);
num = Math.floor(num / 2);
}
return result;
}
console.log(sixteen_bits_reverse(12345));
console.log(sixteen_bits_reverse(10));
console.log(sixteen_bits_reverse(5));
``````

Live Demo:

See the Pen javascript-basic-exercise-137 by w3resource (@w3resource) on CodePen.

Improve this sample solution and post your code through Disqus

What is the difficulty level of this exercise?

﻿

## JavaScript: Tips of the Day

Parameter's value

```function getItems(fruitList, ...args, favoriteFruit) {
return [...fruitList, ...args, favoriteFruit]
}

getItems(["banana", "apple"], "pear", "orange")
```

...args is a rest parameter. The rest parameter's value is an array containing all remaining arguments, and can only be the last parameter! In this example, the rest parameter was the second parameter. This is not possible, and will throw a syntax error.

```function getItems(fruitList, favoriteFruit, ...args) {
return [...fruitList, ...args, favoriteFruit];
}

getItems(['banana', 'apple'], 'pear', 'orange');```
The above example works. This returns the array [ 'banana', 'apple', 'orange', 'pear' ].

Ref: https://bit.ly/3jFRBje