[ a*x + b, a*sin(b*x) + c]
на данных, подбирая коэффициенты, минимизируя отклонения. Посчитать сумму квадратов отклонений данных от теории, сделать вывод, попадает идеально или нет.messages
и вызывать метод messages.getHistory() с указанием id
нужной беседы. valueOf()
, который для обоих возвращает не примитив (тогда бы сравнивали эти примитивы) а this
, себя же, объект. Поэтому во вторую очередь вызывается метод toString()
, который возвращает примитивы: пустую строку для массива и "[object Object]" для объекта.Когда происходит преобразование типов (т.е в случаях использования нестрогого сравнения), JavaScript преобразует типы String, Number, Boolean и Object, следующим образом:
- При сравнении числа (Number) и строки (String), JavaScript пытается преобразовать числовой литерал строки в число. Затем полученное число округляется до ближайшего возможного значения типа Number.
- Если один из операндов является логическим (Boolean), то он преобразуется в значение типа (Number). Если значение логического операнда равняется истине (true), то значение этого операнда преобразуется в 1. Иначе - в 0 (ложь / false).
- Если объект сравнивается с числом или строкой, JavaScript пытается получить значение по умолчанию для данного объекта. Полученное значение преобразуется в примитив, посредством методов valueOf() и toString(). Если преобразовать объект не удается, генерируется ошибка времени выполнения.
- Обратите внимание на то, что объект преобразуется в примитив, если, и только если, второй операнд является примитивом. В ином случае, операнды сравниваются как объекты, соответственно, операция сравнения вернет истину в том случае, если внутренние ссылки обоих объектов ссылаются на один и тот же объект в памяти.
new String('foo');
по сравнению с простой строкой.strtotime('monday this week');
(только на англ.)$rusdate='ПТ 18:00';
list($dow, $hours, $minutes) = sscanf($rusdate, "%s %d:%d");
$rusweek = explode(',','ВС,ПН,ВТ,СР,ЧТ,ПТ,СБ');
$ndow = array_search($dow, $rusweek);
date_default_timezone_set('Europe/Moscow'); // если не настроен PHP
$time = strtotime('monday this week') + 86400 * $ndow + 3600 * $hours + 60 * $minutes;
echo date('Y-m-d H:i:s', $time);
// 2018-10-13 18:00:00
wall
можно получить только с редиректом на https://oauth.vk.com/blank.html
. Так ВК борется со спамом, когда у пользователя один раз получают разрешение, и потом спамят от имени его аккаунта.Данное право доступа по умолчанию недоступно для сайтов (игнорируется при попытке авторизации для приложений с типом «Веб-сайт» или по схеме Authorization Code Flow).
blank.html
:не делайте так!
Попросить у пользователя скопировать адресную строку окна и вставить в форму на вашем сайте-_
не могут встречаться в base64. Может, это разделитель?src
и потом вы добавляете свойство srcAssets
.const X = {...}
сначала правая часть – создаётся объект без имени с указанными свойствами; потом ссылка на этот объект записыватся в константу X
. Поэтому в правой части рано использовать X
– он ещё не определён.X
с известными и независимыми свойствами, а позже задать ему ещё свойства:const PATHS = {
src: 'src'
};
PATHS.srcAssets = PATHS.src + '/assets';
http://oauth.vk.com/blank.html
c токеном в хэше, вытащить его вы сможете только, будучи «над» браузером пользователя. Web extension, установленный в браузере пользователя или целиком ваше приложение на каком-нибудь Electron с компонентом браузера смогут получить такие данные. В обычном браузере этого никак не сделать: чужой домен.users.get()
с этим токеном: вернёт данные пользователя, выдавшего токен. (x, y, z)
.(0, 0)
и смотрит точно на (0, 0, 0)
трехмерного мирка. У экрана ось X
вправо, ось Y
вверх. В мирке ось x
влево, ось y
вверх, ось z
вдаль.x
точно так же добавит X
'у экранному. Y
чуть меньше из-за угла в 45°. Т.е. y домножим на корень-из-2 пополам.z
.X = x;
Y = (y + z) * 0.7071;
-1..1
. Одинаковые seed
и x, y
всегда вернут одинаковое значение.