Хабы: PHP
Для кого это статья? Первоочередной целью написания статьи было именно «разложить все по полочкам» для тех, кто уже работал с mysqli, но не вникал глубоко, а быстренько написал свои обертки и забыл про оригинальный синтаксис. Я постарался разъяснить нюансы, с которым столкнулся сам, при переносе данных из большой и очень старой БД, спроектированной человеком, не знающим про нормализации, в новую, с сильно изменившейся структурой.
Можно ли читать эту статью людям, которые все еще используют старое расширение mysql и только думающие об перехода на PDO или MySqli? Думаю даже нужно.
Читать дальше →
Хабы: Веб-разработка, JavaScript
Здравый смысл веборазработчика подсказывает, что во браузерном джаваскрипте глобальные переменные являются свойствами объекта
window — так что
window.чегоНибудь и просто
чегоНибудь должны быть синонимами и вести себя одинаково (если, конечно, мы не находимся
в какой-нибудь такой функции, где переменную
чегоНибудь переопределили локально).
Здравый смысл веборазработчика также ещё подсказывает, что неопределённая переменная должна иметь значение
undefined — так что
чегоНибудь и undefined должны быть синонимами и вести себя одинаково, когда переменную
чегоНибудь не определяли в джаваскрипте (и если, конечно, никакой чудила не дерзнул переопределить
undefined).
Но если вы собираетесь программировать для Opera 11 (будь то начальная версия
Opera 11.01 или новёхонькая
Opera 11.61), то будьте готовы отречься от здравого смысла
в обоих сих случаях!
(Не только в Opera, но и в других браузерах и средах — но об этом чуть позже.)
Чтобы нагляднейше убедиться в этом, воспользуемся библиотекою
Underscore.js, в которой как раз имеется удобная функция тестирования неопределённых переменных — это функция
_.isUndefined(), в исходном коде определённая самоочевидным способом:
// Is a given variable undefined?
_.isUndefined = function(obj) {
return obj === void 0;
};
Читать дальше →