Daily Archives: 14.01.2014
Странный вывод странного кода
| 
					 1 2 3 4 5 6  | 
						var x = 'outer'; (function() {   var x = 'inner';   eval('console.log(x)');    (1,eval)('console.log(x)');  })();  | 
					
выведет
| 
					 1 2  | 
						inner outer  | 
					
Почему? Вкратце — судя по всему, eval работает с контекстом корректно только при прямом вызове. А если вызвать его ненапрямую, например
| 
					 1 2  | 
						var ev = eval;  ev('console.log(x)');   | 
					
то и в этом случае контекст сбросится на глобальный. Тут есть попытки объяснения: http://stackoverflow.com/questions/19357978/indirect-eval-call-in-strict-mode http://stackoverflow.com/questions/9107240/1-evalthis-vs-evalthis-in-javascript
Тест на регулярные выражения
http://regex.alf.nu/ Вот мой результат — http://grab.by/trRg (заняло часа три, помогал ребёнок трёх лет). Максимум, который видел — 3886 очков (правда за 3 с лишним дня).
CSS-анимация разных вращений
Всё сводится к подбору нужной перспективы у контейнера (http://www.w3.org/TR/css3-transforms/#perspective-property)
| 
					 1 2  | 
						  perspective: 300px;   -webkit-perspective: 300px;  | 
					
А для самого элемента к подбору точки вращения (http://www.w3.org/TR/css3-transforms/#transform-origin-property)
| 
					 1 2  | 
						  transform-origin: 100% 100%;   -webkit-transform-origin: 100% 100%;  | 
					
и повороту по нужной оси на нужный угол (http://www.w3.org/TR/css3-transforms/#funcdef-rotate)
| 
					 1 2  | 
						  transform: rotateX(90deg);   -webkit-transform: rotateX(90deg);  | 
					
Kanbanflow — система распределения задач
На вид симпатичная, простая и быстрая. Позволяет бесплатно создавать множество «досок». Совместный доступ. Есть мобильная версия (правда, не приложение). https://kanbanflow.com/