|
1.使用一个JSON格式化字符串来创建一个JSONFunction(JavaScript functions)
实例: String str = "{func: function( param ){ doSomethingWithParam(param); }}"; JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON(str); JSONFunction func = (JSONFunction) jsonObject.get("func"); ArrayAssertions.assertEquals(new String[] { "param" }, func.getParams()); assertEquals("doSomethingWithParam(param);", func.getText()); 注:函数的写法要注意function(){},参数param是可选的! 2.排除一个JSON格式化字符串的某些属性(Exclude properties) 实例: String str = "{'string':'JSON', 'integer': 1, 'double': 2.0, 'boolean': true}"; JsonConfig jsonConfig = new JsonConfig(); jsonConfig.setExcludes(new String[] { "double", "boolean" }); JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON(str, jsonConfig); assertEquals("JSON", jsonObject.getString("string")); assertEquals(1, jsonObject.getInt("integer")); assertFalse(jsonObject.has("double")); assertFalse(jsonObject.has("boolean")); 3.排除一个JSON格式化字符串的某些属性,使用过滤器(Exclude properties (with filters) 实例: String str = "{'string':'JSON', 'integer': 1, 'double': 2.0, 'boolean': true}"; JsonConfig jsonConfig = new JsonConfig(); jsonConfig.setJsonPropertyFilter(new PropertyFilter() { public boolean apply(Object source, String name, Object value) { if ("double".equals(name) || "boolean".equals(name)) { return true; } return false; } }); JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON(str, jsonConfig); assertEquals("JSON", jsonObject.getString("string")); assertEquals(1, jsonObject.getInt("integer")); assertFalse(jsonObject.has("double")); assertFalse(jsonObject.has("boolean")); |
本文介绍了如何通过JSON字符串创建JavaScript函数实例,并演示了排除指定属性的方法,包括使用配置对象和过滤器实现。

被折叠的 条评论
为什么被折叠?



