无标题文章

1.NSArray / NSString / NSDictionary 不会自动转成对应的JS类型,像普通 NSObject 一样使用它们

Important annotations that needs attention:

//OC

 implementation JPObject

 +(NSArray *)data
 {
  return @[[NSMutableString stringWithString:@"JS"]];
 }

 +(NSMutableDictionary *)dict{
  return [[NSMutableDictionary alloc] init];
 }
 @end

//js

 require('JPObject')
 var ocStr = JPObject.data().objectAtIndex(0)
 ocStr.appendString("Patch")
 var dict = JPObject.dict()
2 dic如果要把 NSArray / NSString / NSDictionary 转为对应的 JS 类型,使用 .toJS() 接口:t.setObject_forKey(ocStr, 'name')

// JS

var data = require('JPObject').data().toJS()   
//data instanceof Array === true 
data.push("Patch") 
var dict = JPObject.dict()
dict.setObject_forKey(data.join(''), 'name')
dict = dict.toJS()
console.log(dict['name'])    //output: JSPatch
console.log(dict.objectForKey('name')) //output: JSPatch
3 使用 dispatch_after() dispatch_async_main() dispatch_sync_main() dispatch_async_global_queue() 接口调用GCD方法:
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.0 *     NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
// do something
});

dispatch_async(dispatch_get_main_queue(), ^{
// do something
});

//js

dispatch_after(1.0, function(){
// do something
})

dispatch_async_main(function(){
// do something
})

dispatch_sync_main(function(){
// do something
})

dispatch_async_global_queue(function(){
// do something
})
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 【2017年最新】☞ iOS面试题及答案 设计模式是什么? 你知道哪些设计模式,并简要叙述? 设计模式是一种编码经...
    紫色冰雨阅读 624评论 0 1
  • 转至元数据结尾创建: 董潇伟,最新修改于: 十二月 23, 2016 转至元数据起始第一章:isa和Class一....
    40c0490e5268阅读 1,776评论 0 9
  • 1、设置UILabel行间距 NSMutableAttributedString*attrString=[[NSM...
    iOS祎阅读 2,222评论 0 0
  • 概述 这篇文章中,我不会说多线程是什么、线程和进程的区别、多线程有什么用,当然我也不会说什么是串行、什么是并行等问...
    hashakey阅读 313评论 0 0
  • jHipster - 微服务搭建 CC_简书[https://www.jianshu.com/u/be0d56c4...
    quanjj阅读 843评论 0 2