var dt = new Date('2010-02-30');
var ok = !isNaN(dt.getDate());
var a = 1;
(function() {
var a = 2;
console.log(a); // 2
})();
console.log(a); // 1
var a = 1;
do {
var a = 2;
console.log(a); // 2
} while(false);
console.log(a); // 2
var a = 1;
объявляет a видимым для себя и дочерних блоков. a будет = 1 если внутри будет for или function. И снаружи, но только если не в function. Например var a = 2
исполнилось, но пропало, так как вызвано в функции (лямбде).var a = 2
(который в do...while) переобъявляет первый a = 1, так как do..while - не function.let a = 1;
(function() {
let a = 2;
console.log(a); // 2
})();
console.log(a); // 1
let a = 1;
do {
let a = 2;
console.log(a); // 2
} while(false);
console.log(a); // 1
let a = 2
(который в do...while) объявляет a в своей области видимости, первый a = 1 остается. var canvas = document.getElementById('canvas'),
context = canvas.getContext("2d");
context.fillRect(50, 50, 90, 50)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<canvas id="canvas"></canvas>
<script>
var canvas = document.getElementById('canvas'),
context = canvas.getContext("2d");
context.fillRect(50, 50, 90, 50)
</script>
</body>
</html>
name.charCodeAt(i) // не имеет смысла, так как name - это массив