Para usar o JavaScriptCore Framework em seu aplicativo iOS, você precisará adicionar o Framework ao seu aplicativo navegando até Targets> Geral> Linked Frameworks and Libraries e adicionando-o.
Em seguida, use #import no arquivo .h do controlador de visualização para incluí-lo: #import <JavaScriptCore / JavaScriptCore.h>
Você poderá então executar este código
//
// JSViewController.m
// JavaScriptCore
//
//
#import "JSViewController.h"
@interface JSViewController ()
@end
@implementation JSViewController
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
// Establish path to JSON file
NSString* path = [[NSBundle mainBundle] pathForResource:@"book"
ofType:@"json"];
// Load contents into a string
NSString* content = [NSString stringWithContentsOfFile:path
encoding:NSUTF8StringEncoding
error:NULL];
// First a context and JS virtual machine is created
JSContext *context = [[JSContext alloc] initWithVirtualMachine:[[JSVirtualMachine alloc] init]];
// Next we send the context a function
[context evaluateScript:@"var valueForKeyTitle = function(json) {var obj = JSON.parse(json); return(obj.Title);}"];
// Prepare a JSValue to receive the JSON
JSValue *returnElement = context[@"valueForKeyTitle"];
// Call the function by sending JSON
JSValue *resultOfFunction = [returnElement callWithArguments:@[content]];
// Print result in console
NSLog(@"Book Title: %@", resultOfFunction);
}
@end
presumindo que você tenha um arquivo json local chamado book.json em seu aplicativo com o seguinte conteúdo:
{"Title":"Greatest Book in the World!!", "Length":214}
Para obter mais detalhes, consulte a postagem completa do blog .
Veja também esta postagem do Big Nerd Ranch .