У меня есть объект, который яваскрипта выглядит примерно так:Удаление Javascript свойства объекта не соответствуют строки
object {
attribute[1424]1405: 149,
attribute[1425]1406: 149,
attribute[1426]1407: 149,
attribute[1426]1408: 149,
attribute[1649]2116: 149,
attribute[1649]2117: 179,
attribute[1649]2408: 119
}
Я пытаюсь удалить все свойства, которые не начинаются с attribute[1649]
(хранится в переменной с именем conditionID
). Есть ли какой-то фильтр, похожий на !:contains()
, который я могу запустить против объекта командой delete
?
Спасибо @Bergi, который работает очень хорошо, когда я явно указать строку для проверки на. Строка, которую я пытаюсь проверить (атрибут [1649] в этом примере), однако, хранится в переменной, которая, как мне кажется, привела меня к пути использования 'delete'. Я пытаюсь сделать код таким образом, но у меня нет никакого результата: 'r ="!/"+ ConditionID +" /.test(p) ";' 'reg = new RegExp (r," g "); ' ' delete amount [reg]; ' –
Оператор'! 'Не является частью регулярного выражения, ни' '' '' literal delimiters. В любом случае вам не следует использовать регулярное выражение здесь (для этого требуется экранирование и т. Д.), Просто используйте одно из решений в связанной статье для динамических шаблонов. – Bergi