繁体   English   中英

在Javascript / google关闭库中进行类型转换

[英]Typecasting in Javascript / google closure library

我正在通过chrome.extension.SendMessage API将包含goog.structs.Set的复杂对象从我的内容脚本传递到后台页面。 另一方面,这个goog.structs.Set作为Object接收。
我怎样才能将它强制转换回goog.structs.Set以便我可以调用它上面的各种方法?

你的意思是闭包编译器吗?

function receiveStructsSet( aSetObject ){

    var mySet =  /** @type {goog.structs.Set} */ (aSetObject); 
}

请参阅http://developer.chrome.com/extensions/messaging.html ,您只能使用chrome.extension.SendMessage传递JSON。

就个人而言,我使用一个简单的对象作为集合,并避免goog.structs.Set:

var MySet = Object.create(null);

如果use必须使用goog.structs.Set,则需要将其序列化并反序列化为JSON。

您还可以在函数声明之前使用注释

/**
 *  @param {goog.structs.Set} aSetObject description of object
 */
function receiveStructsSet( aSetObject ){
  aSetObject.getCount();
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM