localStorage在H5中主要的作用是本地存储,与sessionStorage区别就是localStorage属于永久性存储,而sessionStorage属于当会话结束的时候,sessionStorage中的键值对会被清空。localStorage适合存储小型数据,localStorage的值类型限定为string类型。
iOS 中对localStorage操作
// 设置localStorage
NSDictionary *userDict = @{@"Token":token,@"123":UserName,@"xxj",@"client":@"ios"};
NSString *userContent = [[ToolManager shareToolManager] toJSONData:userDict]; // 转Json字符串处理
NSString*jsString = [NSStringstringWithFormat:@"localStorage.setItem('userContent', '%@')", userContent];
// 获取localStorage
//NSString *jsString = @"localStorage.getItem('userContent')";
// 移除localStorage
// NSString *jsString = @"localStorage.removeItem('userContent')";
//清空localStorage
// NSString *jsString = @"localStorage.clear()";
// 执行js代码
UIWebView 一般是在 webViewDidStartLoad 方法中设置localStorage
[self.webView stringByEvaluatingJavaScriptFromString:jsString];
jsString = [NSString stringWithFormat:@"localStorage.setItem('User', '%@')", userContent];
WKWebView 一般是在 didStartProvisionalNavigation 方法中设置localStorage
[webView evaluateJavaScript:jsString completionHandler:nil]
[webView evaluateJavaScript:jsString completionHandler:^(id object, NSError *error) {
if (!error) {
// 逻辑处理
NSLog(@"js执行成功");
}else {
NSLog(@"%@",error);
}
}];