Получение доступа к элементам массива который является свойством объекта
Добрый день! Подскажите пожалуйста как решить следующую проблему:
Есть объект свойствами которого являются одномерные массивы: var cas_place = { monitor:[2,3], router:[1,5] mfu:[1,3] }; Необходимо в умножить все целочисленные значения всех элементов всех массивов на одно и тоже число. |
Попытался сделать так, но что-то не работает
|
function getQuantity(n,obj){
for ( var key in obj) { if (isArray(obj[key])) for (i=0;i<obj[key].length;i++) { alert(obj[key[i]]); } } } |
var cas_place = {
monitor:[2,3],
router:[1,5],
mfu:[1,3]
};
let factor = 10
for (let key in cas_place) {
if (Array.isArray(cas_place[key])) {
cas_place[key] = cas_place[key].map(n => ~~n === n ? n * factor : n)
}
}
alert(JSON.stringify(cas_place))
|
black_viper, obj[key[i]] -> obj[key][i]
Lemme, тыб ещё генераторы заюзал, а потом через аглифай прогнал. -_- |
black_viper,
var cas_place = {
monitor:[2,3, 'test', 'red'],
router:[1,5],
mfu:[1,3]
};
function foo(data, num) {
Object.keys(data).forEach(function(key) {
data[key].forEach(function(el,i) {
el == +el && (data[key][i] = el * num)
})
})
};
foo(cas_place, 5)
alert(JSON.stringify(cas_place))
|
Aetae,
Цитата:
|
Lemme, человек очевидно только начал разбираться, судя по ошибке, а ты ему стрелочные функции, let и, что хуже, хаки типа ~~n === n.
Ну и это не говоря о том, что замена массивов на новые мапнутые - не есть гуд в любом случае, мало ли на эти массивы где-то ещё ссылки есть. рони это тоже касается. Люди - обсфукаторы прямо, таким только отпугивать новичков от js. Или это и есть ваш хитрый план?)) |
Цитата:
1) Те. кто умееют 2) Те, кто задают вопрос и копипастят ответ 3) Те, кто задают вопрос и пытаются разобраться в ответе. явно, тс не относится к 1му типу, если ко второму, то тут все ясно, если к третьему, то он загуглит хак ~~n и es6 синтаксис. Цитата:
Цитата:
|
Большое спасибо, а как сделать так, чтобы он не только целочисленные значения умножал, есть еще и с запятой.
|
Цитата:
Цитата:
|
Lemme, печаль - тоска.
black_viper, см ответ рони. |
Цитата:
|
C этим разобрался спасибо большое, теперь задача динамически создать из каждого полученного объекта таблицу, чтобы в каждом столбце были свойства объектов, в 1-ом название св-ва, во-втором кол-во, в-третьем цена, в четвертом суммы, которые теперь хранятся в объекте)
|
black_viper,
начинайте кодировать или раздел работа с более внятным описанием |
Написал в раздел работа , лучше спокойно буду сам ковыряться, но зная, что результат будет в руках знающих людей.
|
Но вопрос написания универсальной функции строящей таблицы на основании свойств объета и их значений в виде массивов остается открытым:)
|
black_viper,
вопрос что за таблицу из чего и как, тоже остался открытым. с exel я вам не помогу, но вы бы другим облегчили понимание описав подробно чего хотите. |
| Часовой пояс GMT +3, время: 21:57. |