arr.reduce((arr, n, i) => {
if (n === 1) {
arr.push(i);
}
return arr;
}, []);
Насколько это решение надёжно?Настолько же, насколько и любое другое. Какой аспект "надёжности" вас интересует, что вы вкладываете в это слово?
Можно ли прибегнуть к нему, если под рукой нет штатных секвенций/счётчиков?Можно прибегнуть даже они есть.
span.line
динамически меняется style="transform: translateY(0px);"
Понятно, что разница только в добавлении префикса 'api', но в чём концептуальное различие?Разница не только в добавлении префикса. К этим роутам применяются разные группы middleware (они описаны у вас в RouteServiceProvider). Это, в общем-то, и является ответом на ваш вопрос - выбирайте исходя из нужных middleware.
Задался вопросом почему объект класса не совместим с типом object.Наоборот - это object несовместим с MyObject.
interface Extractable
{
public function extract(): array;
}
class MyObject implements Extractable
{
public $a;
public function extract(): array
{
return [
'a' => $this->a,
];
}
}
class MyOtherObject implements Extractable
{
public $a, $b, $c;
public function extract(): array
{
return [
'a-b' => $this->a . $this->b,
'c' => $this->c->toArray(),
];
}
}
gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.Вам нужно установить python или корректно прописать до него путь в PATH.
На данный момент я знаю, что выводить данные можно в формате либо только года , либо только месяца, либо только дни.Выводить можно в любом формате, который понимает moment.js. Там есть всё, что душе угодно: https://momentjs.com/docs/#/displaying/format/.
В зависимости от кол-ва дней.https://momentjs.com/docs/#/displaying/difference/
Есть ли метод, который делает такое ?Нет, но в javascript есть условные операторы. Вам нужен такой:
if () {}
changeCollection как этой главной функции указать то что будет принимать сколько угодное количество массивов , а последним будет обработчик ?В современном js вот так:
changeCollection(...arrays, handler)
function changeCollection() {
var handler = arguments[arguments.length - 1];
for (var i = 0; i < arguments.length - 1; i++) {
var array = arguments[i];
handler(array);
}
}
function changeCollection() {
var handler = arguments[arguments.length - 1];
for (var i = 0; i < arguments.length - 1; i++) {
var array = arguments[i];
handler(array);
}
}
function deleteFunc(array) {
array.shift();
}
var one = [1 ,2 ,3];
var two = ['b', 'c'];
changeCollection(one, two, deleteFunc)
console.log(one, two); // [2, 3] ['c']
const clone = [...original];
. Но если у вас внутри массивов не примитивы и вы изменяете элементы, то нужно делать глубокое копирование.