![]() ![]() ![]()
Какой рейтинг вас больше интересует?
|
Главная /
Каталог блоговCтраница блогера RMCreative.ru - Блог/Записи в блоге |
![]() |
RMCreative.ru - Блог
Голосов: 1 Адрес блога: http://rmcreative.ru/feed/ Добавлен: 2008-06-12 21:34:00 блограйдером ZaiSL |
Прячем флаги в замыкания
2015-06-23 11:19:14 (читать в оригинале)window.addEventListener('click', function () { var i = 0; return function () { window.alert('You\'ve clicked it ' + (++i) + ' time(s).'); }; }());
Благодаря замыканиям JavaScript позволяет не выносить флаги за функцию-обработчик и тем самым не засорять области видимости уровнями выше.
Выполнить данный кусочек кода можно в консоли любого браузера. Для демонстрации щёлкайте по любому месту открытой страницы.
Кстати, я выкладываю этот и другие интересные кусочки кода на gostash.ru
Вызвать private метод класса в PHP без Reflection
2015-06-10 23:32:23 (читать в оригинале)В комментариях к заметке о вызове private метода через Reflection Roman верно подметил, что можно использовать вместо Reflection анонимные функции. Вот только его вариант работает с PHP7.
Оказывается, можно проделать такое чуть иначе и в PHP 5.4:
class PrivacyViolator { private $caller; function __construct() { $this->caller = function ($method, $args) { return call_user_func_array([$this, $method], $args); }; } function callPrivateMethod($object, $method, $args) { $this->caller->bindTo($object, $object); return $this->caller($method, $args); } } $myObject = new MyClass(); $privacyViolator = new PrivacyViolator(); $privacyViolator->callPrivateMethod($myObject, 'hello', ['world']);
Видео с DevConf 2014: собачники против
2015-05-27 14:48:33 (читать в оригинале)В этом году я на DevConf, к сожалению, не попадаю, но организаторы порадовали видео с прошлого раза.
Доклад рассказывали сразу три человека: Иван Матвеев, Григорий Кочанов и я. Тема холиварная, про оператор @
.
Посмотреть можно на сайте DevConf
Копируем в буфер обмена без Flash
2015-05-26 11:21:05 (читать в оригинале)Tello уже довольно продолжительное время позволяет нажать CTRL + C при наведённом на карточку курсоре мыши и получить в буфер обмена ссылку на эту карточку. Удобно, но вроде ничего необычного, я такое уже делал в Stay.com при помощи Flash.
Trello не использует Flash и это заметили пользователи StackOverflow. Через какое-то время подтянулся автор кода и рассказал, как это работает.
На самом деле с буфером обмена Trello не работает. При нажатии CTRL текст пишется в создаваемый <textarea>
и туда ставится фокус. То есть когда мы нажимаем C текст копируется. Когда CTRL отпускается, <textarea>
скрывается.
Код приведён там же в вопросе на StackOverflow.
Вызвать private метод класса в PHP
2015-05-25 23:19:52 (читать в оригинале)Бывает, не хочется портить API ради тестирования, но нужно как-то добраться до private метода. Сделать это можно вот так:
function callPrivateMethod($object, $method, $args) { $classReflection = new \ReflectionClass(get_class($myClass)); $methodReflection = $classReflection->getMethod($method); $methodReflection->setAccessible(true); $result = $methodReflection->invokeArgs($object, $args); $methodReflection->setAccessible(false); } $myObject = new MyClass(); callPrivateMethod($myObject, 'hello', ['world']);



![]() | ||
+203 |
215 |
книга мудрости |
+188 |
288 |
Relazioni |
+164 |
208 |
Палитра тишины - веб-дизайн и не только... |
+163 |
207 |
Blender-Empire |
+148 |
227 |
Карен-тян |
![]() | ||
-3 |
13 |
ITDalee |
-5 |
245 |
Создавая пространство.. Блог декоратора Кати Саган |
-6 |
4 |
antiqvar |
-8 |
7 |
Канарик |
-11 |
6 |
Real_Dark_Trancer |

Загрузка...

взяты из открытых общедоступных источников и являются собственностью их авторов.