## DEV Community

Minhazur Rahman Ratul

Posted on • Updated on

# 5 useful javascript tricks for begginers.

In this post, I will show you 5 awesome javascript tricks which will make your life more easier. And will help you to become a better developer. So if you are interested, continue reading.

# Trick-1: Remove duplicates from an Array!

This trick is pretty simple. Suppose I have an array which is containing number, strings and booleans. And in this array I want to make sure, that there's no duplicate item. So how do you do do that?

``````const array = [1, 2, 3, 2, 1, true, true, false, 'Ratul', 1, 5];
const filtered__array = [...new Set(array)];
console.log(filtered__array) // [ 1, 2, 3, true, false, 'Ratul', 5 ]
``````

Simple!

# Trick-2: Turn a Decimal Number to a integer.

This one is a pretty straight forward trick. Let me show you.

``````const number = 23.6565
console.log(number | 0);
``````

Isn't it so simple!

# Trick-3: Getting the Last Value of an Array!

Suppose you have an array of something. Now if you want to have the last item of the array, how will you do that?

``````const array = [1, 2, 3, 4, 5]
const last_Item = array.slice(-1)
console.log(last_Item)

``````

Here we go! Now if you put -2 instead of -1, you will get the last two values of the array and then if you give -3 instead of -2, you will get the value of last three index's and so on.

# Trick-4: Get a random index value from an array.

Suppose we are doing a lottery programme. We have an array which is containing the names of the prticipants. Now we want only one user randomly from the array to decide a winner.

``````const participants = ['Ratul', 'George', 'july', 'Padrik', 'G']
const winner = participants[Math.floor(Math.random() * participants.length)]
console.log(winner) // july was the winner 😊
``````

# Trick-5: Detect the most lengthy word in an array

Create an array and add some different strings. Now print the most lengthy string of this array.

``````const array = ['Apple', 'Pine-apple', 'Banana', 'Jack-fruit']

let most_lengthy_string = ''
array.forEach((item) => {
if (item.length > most_lengthy_string.length) {
most_lengthy_string = item
}
})
console.log(most_lengthy_string)
``````

Simple! So let me explain you what's going on here. Firstly we have array which is containing some strings. And After that, I have created a variable which is containing an empty string. And now, to detect the most lengthy string in this array, I need to take a look at all of the array items So I have looped through the array. And if the array's item length is greater that the length of our "most_lengthy_string" The we are reassigning the value of the variable and after all I am just printing out the variable. That's all!

### Conclusion

Thanks for reading this article. Hope you enjoyed that. If you have any doubt regarding that post, please let me know. And make sure you follow me to recieve all the informational posts just like that.

# :)

Daniel Mateos

I think the best way you can obtain the most lengthy string in an array is this:

``````const mostLengthy = someArray
.reduce((acc, i) =>
i.length > acc.length
? i
: acc
)
``````

Minhazur Rahman Ratul

useful :)

Coderslang: Become a Software Engineer

That's a good one, although it might be useful to first filter out `null`s and `undefined`s from the array:

``````const mostLengthy = someArray
.filter(item => item)
.reduce((acc, i) => i.length > acc.length ? i : acc);
``````

Matthieu • Edited

You can also do this way I believe (sort by the length of the words in descending order, then pick the first one).

``````const mostLengthy = someArray.sort((x, y) => y.length - x.length)[0]
``````

Maybe it's more understandable ? But I agree `reduce` is great :).

Aspiiire

That is really useful, thank you 😁

last_Item = arr.slice(-1) would not return the last item but a new array containing the last item.

you can do :

``````const lastItem = arr[arr.length-1]
const lastItem = arr.slice(-1)[0]
const lastItem = arr.slice(-1).pop()
const [lastItem] = arr.slice(-1)
``````

Minhazur Rahman Ratul

wow nice. !

Lucas Giraldelli

Any documentation about that pipeline that converts into 'normal' number?

Benoît Schiex

This is a bitwise or.
Since bitwise operations only make sense on integers, the decimal part is truncated.

Lucas Giraldelli

thank you!

Juncheng • Edited

Try with this:

``````const number = 23.6565
console.log(~~number);
const string = "24"
console.log(+24)
``````

Fábio Luciano

By normal number, did you mean integers?

Kamal Hossain

thanks for sharing.

Jon Randy 🎖️
``````const last_item = array.reverse()[0]
``````

Kelly

that one mutates the array, though

Jon Randy 🎖️

Yeah. I always wondered why they decided to make it like that

Ian Wijma

Not 100% sure you should the weird int casting. Not everyone knows about it. And could cause confusion when reading it. Maybe just use parseInt. 😁 Really Cool post though!!

CaptainOfPhB

I think those are basic skills of javascript developer(maybe you are a new bee), and the second trick is not recommended, Math.round/Math.floor/Math.ceil are better choice, which will make your code more readable.

baikai223

Minhazur Rahman Ratul

I don't understand what you have said :|

baikai223

Wouldn't it be better to use pop() instead of slice()?

Minhazur Rahman Ratul

you can use what ever you want. ......I know how to do that with slice so I have shown with slice. If you know how to do that with pop() you can use pop. :)

Deepansh Dash

Thanks it is useful.

suvel rathneswar⚛️

Devendra Gaud

I'm still wondering how the logic works in Trick-2.

Minhazur Rahman Ratul

Small trick ;)

Devendra Gaud

Ok, I just discovered two other ways similar to that trick.

``````console.log(~~5.95)
console.log(5.95 >> 0)
``````

And I'm more confused now.