Как взять данные из массива в JS?
Для начала в режиме зануды должен заметить, что это задание, а не вопрос.
Далее, у вас ошибки в понимании синтаксиса JS. Советую перечитать описание JSON, хотя бы в википедии. Например, {7, 6, 8} - так нельзя писать, ибо формат массива, но формально объект, парадокс.
Ну а решение простое, в лоб:newObj = []; //Новая структура
for(let i=0;i<myObj.length;i++) { //Сканируем исходный массив
	let o = myObj[i]; //Очередной объект
	if (!newObj[o.category_id]) newObj[o.category_id] = [];
	newObj[o.category_id].push(o.object_id);
}
Результат:
Во-первых, подразумевается видимо массиво объектов? Потому что в объекте всегда должен быть ключ, которого у вас нет.const myObj = [
{object_id: 2, category_id: 2},
{object_id: 3, category_id: 2},
{object_id: 4, category_id: 1},
{object_id: 4, category_id: 2},
{object_id: 5, category_id: 1},
{object_id: 5, category_id: 2},
{object_id: 12, category_id: 1},
{object_id: 11, category_id: 1},
{object_id: 13, category_id: 1},
{object_id: 10, category_id: 1},
{object_id: 7, category_id: 3},
{object_id: 6, category_id: 3},
{object_id: 8, category_id: 3},
];
Вообще решение может выглядеть так:const myArr = [
{object_id: 2, category_id: 2},
{object_id: 3, category_id: 2},
{object_id: 4, category_id: 1},
{object_id: 4, category_id: 2},
{object_id: 5, category_id: 1},
{object_id: 5, category_id: 2},
{object_id: 12, category_id: 1},
{object_id: 11, category_id: 1},
{object_id: 13, category_id: 1},
{object_id: 10, category_id: 1},
{object_id: 7, category_id: 3},
{object_id: 6, category_id: 3},
{object_id: 8, category_id: 3},
];

var filtered = {};

function getObj (arr, cat_id) {
	filtered[cat_id + ''] = [];
	arr.forEach((item, i) => {
		item['category_id'] == cat_id ? filtered[cat_id + ''].push(item['object_id']) : '';
	})
}

getObj(myArr, 1);

console.log(filtered);  // 1: [4,5,12,11,13,10]