Ich implementiere public class func JSONObjectWithData(data: NSData, options opt: NSJSONReadingOptions) throws -> AnyObject
Aber habe keine Ahnung, welche Ausnahmen kann ich fangen? Mein Kollege bei der Arbeit schlägt vor, den Fehler zu debuggen, wenn ich ihn erwische. Aber es muss einen anderen Weg geben, es herauszufinden, bevor Sie den Code ausführen?Woher weiß ich, welche Ausnahmen zu fangen in einer Kernfunktion, die Swift
2
A
Antwort
0
Hier wirft nur Wrapper um NSError
Normalerweise verwende ich diese Funktion wie folgt aus:
if let yourObject = (try? NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers)) as? TObjectTypeYouExpected
{
// other code here
}
Sie können es auch auf diese Weise verwenden:
do {
yourObject = try NSJSONSerialization.JSONObjectWithData(data, options: options)
} catch let error as NSError {
print("Some error: \(error)")
data = nil
}
Verwandte Themen
- 1. Woher weiß Swift zur Laufzeit, welche Implementierung verwendet werden soll?
- 2. Php - Javascript - Woher weiß ich, welche Seiten in Farbe und welche in Schwarz-Weiß sind?
- 3. Woher weiß ich, in welche Richtung der Benutzer geklaut hat?
- 4. Wann Ausnahmen zu fangen?
- 5. Woher weiß Haskell, welche Typklasseninstanz Sie meinen?
- 6. Woher weiß ich, welche Version von Servlet-api.jar ich habe?
- 7. Woher weiß ich, welche Servlet- und JSP-Version ich verwende?
- 8. Woher weiß Django, welche Migrationen durchgeführt wurden?
- 9. Woher weiß ich, welche Parameter nl80211 Befehle benötigen?
- 10. Woher weiß ich, welche serielle Schnittstelle unter Linux verwendet wird?
- 11. BeanFactoryAware ?? Woher weiß es, welche BeanFactory zu verwenden ist?
- 12. Woher weiß ich, welche Vorverarbeitung für das Modell verwendet wurde?
- 13. Woher weiß ich, welche Pixeldichte-Version eines Bilds Android verwendet?
- 14. Woher weiß Bundler, welche Umgebung zu verwenden ist?
- 15. Woher weiß ich die Struktur eines Tupels?
- 16. iOS - Swift Woher weiß ich, wann copyItemAtPath beendet wurde?
- 17. Wie mehrere Ausnahmen in Clojure zu fangen?
- 18. Woher weiß ich, ob ich einige ungeprüfte Ausnahmen behandelt habe, die mein .NET-Code auslösen könnte?
- 19. Woher weiß ich, woher eine Nachricht in rabbitMQ gesendet wird?
- 20. Woher weiß NHibernate, in welche Klasseneigenschaften Werte eingefügt werden sollen?
- 21. Woher weiß ich, welche Attribute in ControlState und welche in ViewState gespeichert sind?
- 22. Wann die Ausnahme vs Wann die Ausnahmen zu fangen?
- 23. Kann ich versuchen, Ausnahmen in PDO-Transaktionen zu fangen?
- 24. Java Ausnahmen fangen Anfänger
- 25. Woher weiß ich, wenn WindowsFormsHost die Größe in WPF ändert?
- 26. Woher weiß ich, welcher Knoten in JavaFX fokussiert ist?
- 27. jQuery: fangen Ajax-Ausnahmen
- 28. Ausnahmen Chaining, Ausnahmen fangen neue werfen
- 29. django - fangen mehrere Ausnahmen
- 30. scala versuchen/fangen nicht einige Ausnahmen zu fangen
Diese Methode kann „ein Wurf 'NSError'-Objekt, das das Problem beschreibt". Das ist alles. – werediver
Ok. also in den Kernfunktionen gibt es wahrscheinlich keine anderen Arten von Ausnahmen? – user1847214
Ich denke schon. Wir können es als ObjC-Erbe betrachten. – werediver