1. Да, кроме того, что var использовать просто незачем.
2. const на реальном примере - любая переменная, которая не будет менять своего значения.
const date1 = '01/02/2019'
const date2 = '07/02/2019
const params = { dateFrom, dateTo )
const diff = getDatesDiff(date1, date2)
return diff
3. Да, почти весь es6 это синтаксический сахар, чтобы код выглядел яснее, логичнее и писать его было проще и приятнее. Это убыстряет разработку и делает js полноценным современным языком, а не скриптовой недоделкой.
4. Стрелочные функции запоминают контекст в котором они создаются, для обычных функций, если они используются вне модуля где созданы, контекст придется указывать явно. То есть у стрелочных функций нет своего this, у обычных есть.
5. -
6.
Зачем это нужно, если я могу написать так
let user = 'Кевин';
console.log('Привет' user!); // Привет, Кевин!
Вы можете написать как угодно, но этот код даже не скомпилируется. Вы видимо не знаете основ синтаксиса Js
7.
Может пару советов от вас, что действительно нужно знать из es6, если уровень js не очень высокий?
Знать вообще ничего не надо, надо понимать как это работает. Если нет понимания по поводу всех моментов js, то думать о es6 смысла нет