# The double tilde ~~ operator in Javascript

#### š Neural networks for Javascript developers

The Neural Networks for JavaScript developers book is almost ready! Learn the basics of AI with TensorFlowJs examples. Join now the presale and get a 15\$ coupon off the launching price!

Adding to the list of useful obscure operators in Javascript, today will discuss the double tilde `~~` operator.

What it does is remove everything after the decimal point. Think of it as a way to round a number.

Let's see it in action:

``````console.log( ~~ 7.34) // 7
console.log( ~~ -11.40) // -11``````

The full formula is:

``````const doubleTilde = (x) => {
if(x < 0) return Math.ceil(x);
else return Math.floor(x)
}``````

It also works with strings:

``````console.log( ~~ "7.34") // 7
console.log( ~~ "-11.40") // -11``````

For example, this can be used when we generate a random number for a HSL color in Javascript:

``````const randColor = `hsl(\${~~(360 * Math.random())}, 100%, 50%)`

// will output something like "hsl(123, 100%, 50%)"
// or  "hsl(123, 100%, 50%)"``````

Under the hood what is happening is that we are applying the single tilde operator twice. So actually, there is no real double tilde operator š.

But, we do have a double asterisk ** operator in Javascript.

#### š Neural networks for Javascript developers

The Neural Networks for JavaScript developers book is almost ready! Learn the basics of AI with TensorFlowJs examples. Join now the presale and get a 15\$ coupon off the launching price!

## Neural Networks for JavaScript developers Presale - 15\$ free coupon

Hi friend! Before you go, just wanted to let you know that in March 2023 I will be launching the TensorFlow.Js by Example course.

This course will include basic concepts of AI and Neural Networks done with TensorFlowJs such as:

• Working with datasets
• Visualizing training
• Deep Neural Networks in JavaScript
• Reinforcement Learning
• Convolutional neural networks
• and much more ...

Also, there will be a lot of examples as:

• Object detection
• Natural language processing
• Face and voice recognition
• Gaming AI

Join now the waiting list and get a 15\$ coupon off the launching price!

X