Жигалов Сергей.
Разработчик интерфейсов.
разработал JavaScript для Netscape
... JS был обязан «выглядеть как Java», только поменьше, быть эдаким младшим братом-простаком для Java...
... Кроме того, он должен был быть написан за 10 дней, а иначе мы бы имели что-то похуже JS... В то время мы должны были двигаться очень быстро, т.к. знали, что Microsoft идет за нами...
v2.0 | JavaScript | |
v3 | JScript |
JavaScript | Netscape |
ActionScript | Flash |
JScript | Internet Explorer |
(JavaScript Object Notation)
Дуглас Крокфорд, 2001
{
"first": "John",
"last": "Doe",
"married": true,
"born": 1890,
"friends": [ "Tarzan", "Cheeta" ]
}
(JavaScript Object Notation)
Дуглас Крокфорд, 2001
John
Doe
true
1890
Tarzan
Cheeta
(Asynchronous JavaScript and XML)
Джеймс Гаррет, 2005
ECMAScript | 1997 |
ECMAScript 2 | 1998 |
ECMAScript 3 | 1999 |
ECMAScript 5 | 2009 |
ECMAScript 6 (ES2015) | 2015 |
ECMAScript 7 | ? |
123 // 123
12.3 // 12.3
0x11 // 17
0b11 // 3
0o11 // 9
'строка текста'
"строка текста"
'中文 español русский \' '
'«JavaScript — это простой, но ' +
'изящный язык, который является ' +
'невероятно мощным для решения ' +
'многих задач» © Джон Резиг'
true
false
var a;
console.log(a); // undefined
var studentsCount;
studentsCount = 98;
var studentsCount = 98;
var studentsCount = 98,
language = 'JavaScript';
oneMoment A-z _ $1moment
soSo A-z 0-9 _ $so-so
var currentTime;
var MILLISECONDS_IN_DAY;
break do try while
case else new with
catch finally return
continue for switch
debugger function this
default if throw
delete in instanceof
typeof var void
https://clck.ru/9auhk
class enum extends super
const export import
https://clck.ru/9auhk
// это короткий комментарий
/* а это длинный комментарий
написаный в несколько строк */
++ (инкремент) -- (декремент) - (унарный минус) ! (логическое НЕ)
var a = 1;
var b = a++; // b === 1, a === 2
var a = 1;
var b = ++a; // b === 2, a === 2
* (умножение) / (деление) % (остаток от деления)
+ (сложение) - (вычитание) + (сложение строк)
< (меньше) <= (меньше или равно) > (больше) >= (больше или равно)
== (проверка на равенство) != (проверка на неравенство) === (проверка на идентичность) !== (проверка на неидентичность)
& (побитовое И)
| (побитовое ИЛИ)
&& (И)
|| (ИЛИ)
= (присваивание)
*= /=, +=, -=, &=, ^=, |=
(присваивание с операцией)
var a = 1;
a += 1;
a = a + 1;
if (language === 'JavaScript') {
likes = likes + 1;
} else {
likes = likes - 1;
}
likes = language === 'JavaScript' ?
likes + 1 :
likes - 1;
switch (language) {
case 'JavaScript':
likes++;
break;
case 'C++':
case 'Java':
break;
default:
likes--;
}
a = b * 2;
a = b * 2;
// 2 - это выражение литерала
// b - это выражение переменной
// b * 2 - это арифметическое выражение
// a = b * 2 - это выражение присвоения
function getTrue() {
return true;
}
getTrue(); // true
function getTrue() {
return
true;
}
getTrue(); // undefined
'use strict';
// этот код будет работать
// по современному стандарту ES5
implements let private
interface package protected
public yield static
https://clck.ru/9auhk
console.log('Hello, world!');
console.log('Hello, world!');
// index.js
console.log('Hello, world!');
$ node index.js
Подать заявку можно здесь
Уже все есть
# Клонируем репозиторий
git clone https://github.com/gogoleff/
verstka-tasks-1.git
# Заходим в созданную папку с клоном
cd verstka-tasks-1
# Решаем задачу в любимом редакторе...
# Добавляем все измененные файлы через пробел
git add index.html
# Коммитим (утверждаем изменения)
git commit -m "Моё решение задачи"
# Отправляем изменения в удалённый репозиторий
git push origin master
# Добавляем все измененные файлы через пробел
git add index.html
# Коммитим (утверждаем изменения)
git commit -m "Моё решение задачи"
# Отправляем изменения в удалённый репозиторий
git push origin master