No ; , like python
Semicolons are not required in JavaScript. Personally, I always use them. You can find some good articles that discuss the positives and negatives of semicolons.
What is () => {}?
As mentioned by others, this is ES6 (also known as ES2015) syntax, and defines a function. They are sometimes called arrow functions, and you can read more about them here.
So (a) => { return a*2; } is equivalent to function(a) { return a*2; }
Import follow what rule?
Import is similar to require. You can read about it here and about export here. They are part of the es6/es2015 module syntax.
es6/es2015 is not supported directly by browsers yet. However, the use of transpilers like BabelJS and Traceur allow you to use it today. I highly recommend that you invest some time using it. It has served me well to better understand examples. I find it to be a cleaner syntax, but that is a more subjective reason to learn it.