Добавление свойства в объект js
Есть функция, которая принимает строку любых символов и возвращает только числа в виде строки.
Задача состоит в том, чтоб написать другую функцию, которая будет возвращать объект, в котором ключ - это цифра строки, полученной предыдущей функцией, а свойство - сколько раз повторяется эта цифра в строке.
Вопрос такой - как задать свойство?
Я реализовал таким образом:
function countNumber(str) {
let obj = {}
//makeNumber работает ок, не обращаем внимание
let stringOfNumbers = makeNumber(str);
for (let i = 0; i < stringOfNumbers.length; i++) {
obj[stringOfNumbers[i]] = 1;
}
}
потом If-ОМ проверяем, есть ли уже такое значение и т.д, но сама проблема в том, что не задается свойство и я никак не могу сообразить, как задать нужное мне название свойства.
Заранее спасибо за ответ!
Ответы (2 шт):
... не задается свойство
Как Вы проверяете, задается оно или не задается?
function countNumber(str) {
let obj = {}
let stringOfNumbers = str; //makeNumber(str);
for (let i = 0; i < stringOfNumbers.length; i++) {
obj[stringOfNumbers[i]] = (obj[stringOfNumbers[i]] || (obj[stringOfNumbers[i]] = 0)) + 1;
}
return obj;
}
console.log(countNumber([3, 6, 1, 1]));
Все, спасибо) нашел такой вот метод Object.defineProperty(), уже получилось подстроить под решение