![]() ![]() ![]()
Какой рейтинг вас больше интересует?
|
Главная /
Каталог блогов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']);



![]() | ||
+121 |
150 |
Мирабель_Лотэссэ |
+96 |
122 |
Полигон |
+75 |
138 |
Положить конец как надеждам, так и страхам. |
+75 |
130 |
biletiks |
+71 |
141 |
Пять страниц о... |
![]() | ||
-10 |
6 |
Блог Exler.RU |
-30 |
8 |
Melipomena |
-33 |
14 |
Анатолий Вассерман |
-46 |
37 |
Օրագիր |
-60 |
2 |
КнигоБлог |

Загрузка...

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