Вы можете получить значения ключей объекта с помощью Object.values () .
const params = [{"title":"How to code","author":"samuel","category":"categoery","body":"this is the body"}]
params.map(data => {
console.log(Object.values(data))
})
Ну, это было легко...
оказывается, что по умолчанию "спасательный" оператор не ловит весь исключения, но только те, которые являются подклассами StandardError. SyntaxError является одноуровневым элементом/кузеном StandardError, не подклассом его, таким образом, спасательный оператор не получает его, если явно не сказали.
, Чтобы иметь спасательное получение блока весь исключения, необходимо изменить код на следующее:
#!/usr/bin/ruby
good_str = "(1+1)"
bad_str = "(1+1" # syntax error: missing closing paren
begin
puts eval(good_str)
puts eval(bad_str)
rescue Exception => exc
puts "RESCUED!"
end
Обращают внимание на изменения в "спасательной" строке, от "спасения => экскавация" для "спасения Исключения => экскавация"
Теперь, когда Вы выполняете код, Вы получаете желаемые результаты:
2
RESCUED!
Брент уже добрался ответ, который работает , но я рекомендую спасти от самого маленького набора исключений, которые можно сойти с рук. Это удостоверяется, что Вы не случайно пожирание что-то, чем Вы не означаете быть.
Таким образом,
begin
puts eval(good_str)
puts eval(bad_str)
rescue SyntaxError => se
puts 'RESCUED!'
end