【问题标题】:Is it possible to convert a JSValue into an NSNumber?是否可以将 JSValue 转换为 NSNumber?
【发布时间】:2014-11-11 08:31:07
【问题描述】:

这将显示以下错误:“JSValue”不可转换为“NSNumber”。如果无法转换,我应该如何获取 JSValue 并将其分配给我的 NSNumber 变量?

    var sentences:NSNumber = getSentences.callWithArguments([])

【问题讨论】:

    标签: ios swift javascriptcore


    【解决方案1】:

    根据header file JSValue.h,您需要在您的JSValue 对象上调用toNumber()。所以它可能是:

    var sentences:NSNumber = getSentences.callWithArguments([]).toNumber()
    

    【讨论】:

      【解决方案2】:

      你可以试试:

      if let sentences = getSentences.callWithArguments([]) as? NSNumber {
          // consume sentences here
      }
      

      if let 结构可能是对它的最简单访问,因为它实际上可能不是数字,如果这不起作用,您将不得不返回 JavaScriptCore 并调用 JSValueToNumber

      let sentences = getSentences.callWithArguments([])
      let nSentences = JSValueToNumber(context, sentences, nil)
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-09-15
        • 2021-07-31
        • 2013-09-02
        • 2010-11-24
        • 2011-09-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多