Сплит-массив для SVG Polyline JS - PullRequest
0 голосов
/ 08 ноября 2018

Как я могу разделить в JavaScript массив данных

{x:30, y:45, x:36, y:49} 

в форму

[30, 45, 36, 49]

Мне нужна эта форма, чтобы передать координаты полилинии SVG. Я нашел метод под названием Array.prototype.map, но я не могу понять, как его использовать.

1 Ответ

0 голосов
/ 08 ноября 2018

Ваш объект повторяет ключи, и это не разрешено в javascript. Функция map предназначена для массивов, а не для объектов.

Если у вас есть объект с ключами x, y, z, вы можете преобразовать его в массив, используя Object.values

const obj = {x:30, y:45, z:36};

//outputs: [30, 45, 36]
console.log(Object.values(obj));

Но если бы вы хотели построить ломаную линию, у вас был бы массив, подобный следующему:

[{x:30, y:45},{x:36, y:49}]

И тогда у вас будет метод карты. И вы могли бы сделать что-то вроде этого:

const coords = [{x:30, y:45},{x:36, y:49}];

const polyline = coords.map((c)=> c.x + "," + c.y).join(' ');


// outputs: 30,45 36,49
console.log(polyline);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...