返回

时间:2016-02-12 12:20:10

标签: swift

我正在尝试从下面的方法中获取数组。方法parseJSONResult返回一个数组,我已经检查过它是否正确地使用print执行此操作并且绝对可以。变量self.jobOpenings是类中的数组属性。我有这个变量,因为我想在另一个类中调用doNetworking()后使用它。但是,.count如果在if httpResponse.statusCode == 200语句之外调用,则为0。我希望我已经为任何人提供了足够的信息来帮助我,谢谢。

func doNetworking() {
        dataTask?.cancel()
        let url = NSURL(string: "https://example.com/")
        let session = NSURLSession.sharedSession()
        dataTask = session.dataTaskWithURL(url!, completionHandler: {
            data, response, error in
            if let error = error {
                if error.code == -999 {
                    print(error)
                }   
            } else if let httpResponse = response as? NSHTTPURLResponse {
                if httpResponse.statusCode == 200 {
                    let parsedData = self.parseJSONData(data!)
                    self.jobOpenings = self.parseJSONResult(parsedData!)
                    return
                }
            }
        })
        dataTask?.resume()
    }  

1 个答案:

答案 0 :(得分:0)

我认为,如果您在.count之外调用if httpResponse.statusCode == 200方法,那么由于return

末尾的if,它将为0

当执行if之后的代码,不会被调用