- 浏览: 41653 次
- 性别:
- 来自: 广州
-
文章分类
最新评论
JSON.parse和JSON.stringify这两个浏览器自带(IE6/7除外)的方法平常我们经常用到,
但是一般都只是用到了他们的第一个参数,
比如: 字符串转对象:JSON.parse('{}');
对象转字符串:JSON.stringify({});
https://mozilla.github.io/rhino/ 下载 rhino1_7R5.zip , 解压后运行 cmd
cd D:\rhino\rhino1_7R5
java -jar js.jar json.js
参考: JSON.parse和JSON.stringify 参数详解
https://www.cnblogs.com/lmh2072005/p/5985431.html
但是一般都只是用到了他们的第一个参数,
比如: 字符串转对象:JSON.parse('{}');
对象转字符串:JSON.stringify({});
https://mozilla.github.io/rhino/ 下载 rhino1_7R5.zip , 解压后运行 cmd
cd D:\rhino\rhino1_7R5
java -jar js.jar json.js
// Import the Swing GUI components and a few other classes var swingNames = new JavaImporter(javax.swing, javax.swing.event, javax.swing.border, java.awt,java.awt.event); importPackage(java.net); importPackage(java.io); importPackage(java.util); importClass(java.lang.Thread); with (swingNames) { var frame = new JFrame("JSON 天气预报 "); //frame.setSize(600,400); frame.setLocation(200,200); var txtfield = new JTextField(40); // URL entry field var alist = ["北京","上海","天津","重庆","广州","杭州","武汉","长春"]; var blist = ["010100","020100","030100","040100","280101","210101","200101","060101"]; txtfield.setText("http://www.weather.com.cn/data/sk/101"+blist[4]+".html"); var button1 = new JButton("Go"); // Button to send var button2= new JButton("Clear"); var filechooser = new JFileChooser(); // A file selection dialog var row = Box.createHorizontalBox(); // A box for field and button var col = Box.createVerticalBox(); // For the row & progress bars var padding = new EmptyBorder(3,3,3,3); // Padding for rows var texta = new JTextArea(10,30); texta.setEditable(false); texta.setLineWrap(true); var sp = new JScrollPane(texta); //sp.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); sp.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); // Put them all together and display the GUIm row.add(txtfield); // Input field goes in the row row.add(button1); // Button goes in the row row.add(button2); col.add(row); // Row goes in the column col.add(sp); frame.add(col); // Column goes in the frame row.setBorder(padding); // Add some padding to the row frame.pack(); // Set to minimum size frame.visible = true; // Make the window visible frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // KeyEvent: ENTER txtfield.addActionListener(function() { try { var url = new URL(txtfield.text); new java.lang.Thread(function() { connect(url); }).start(); } catch(e) { JOptionPane.showMessageDialog(frame, e.message, "Exception", JOptionPane.ERROR_MESSAGE); } }); // When the user clicks the button, call this function button1.addActionListener(function() { try { var url = new URL(txtfield.text); new java.lang.Thread(function() { connect(url);}).start(); } catch(e) { JOptionPane.showMessageDialog(frame, e.message, "Exception", JOptionPane.ERROR_MESSAGE); } }); // Clear button2.addActionListener(function() { texta.setText(""); }); // 连接 function connect(url){ try { var conn = url.openConnection(); // Get java.net.URLConnection conn.setConnectTimeout(5000); conn.connect(); // Connect and wait for headers var input = new InputStreamReader(conn.getInputStream(),"UTF-8"); var buf = new BufferedReader(input); var line = buf.readLine().toString(); buf.close(); input.close(); var obj = JSON.parse(line.trim()); var str =""; if (obj == null) str = line; else str = JSON.stringify(obj, null, 4); // 缩进4个空格 texta.append(str+"\n"); } catch(ex){ texta.append(ex.message); } } }
参考: JSON.parse和JSON.stringify 参数详解
https://www.cnblogs.com/lmh2072005/p/5985431.html
发表评论
-
html : 表单提交前检查填入数据
2018-10-27 22:21 1673fund1.html <!DOCTYPE html& ... -
javascript : 回调函数例子
2018-10-13 12:43 763数字时钟 digital_clock.html <! ... -
javascript : d3.js 读取csv , 画折线图
2018-10-07 11:04 2950参考 https://blog.csdn.net/github ... -
RGraph : svg : 波动的柱状图
2018-09-24 13:35 956www.rgraph.net 下载 RGraph4.67-st ... -
RGraph : svg : 玫瑰图
2018-09-24 08:42 1073www.rgraph.net 下载 RGraph.minifi ... -
RGraph : svg : 直方图
2018-09-23 23:50 791www.rgraph.net 下载 RGraph.minifi ... -
RGraph : svg : 饼图
2018-09-23 23:09 713www.rgraph.net 下载 RGraph.mi ... -
RGraph : svg : 双线图
2018-09-23 18:19 814www.rgraph.net 下载 RGraph.minifi ... -
java : mozilla rhino js Test URL or Socket
2018-09-08 07:29 1066https://mozilla.github.io/rhino ... -
java : mozilla rhino jsc 编译
2018-09-05 21:37 638mozilla rhino 用 jsc 编译 *.js 编写 ... -
java : mozilla rhino js 打开文件
2018-08-30 23:20 531https://mozilla.github.io/rhino ... -
java : var 语法糖
2018-08-26 08:27 1218jdk 10 据说要采用 var 语法糖,其实就是一个字符串替 ... -
java : chat 客户端
2018-08-25 13:48 625Client.java import java.io.*; ... -
java : mozilla rhino chat 客户端
2018-08-25 13:08 505https://mozilla.github.io/rhino ... -
java : dom4j 美化 XML 输出文件
2017-05-21 09:31 1588PrettyXML.java package test; ...
相关推荐
Mozilla Rhino,作为一款强大的JavaScript引擎,允许开发者在Java环境中运行JavaScript代码。而Gino,就是这样一个为基于Mozilla Rhino的JavaScript开发提供便利的Gradle插件。本文将深入探讨Gino的核心功能、使用...
除了这些库,我们还可以使用JavaScript引擎如Nashorn或Rhino在Java中执行JavaScript代码,处理JSON数据。这在某些情况下很有用,比如当你需要使用特定的JavaScript库或者处理复杂JSON结构时。 1. 使用Nashorn(Java...
`json-simple`简化了JSON操作,`ormlite` 提供了方便的数据库操作,而`js.jar`(可能是Rhino)则实现了Java与JavaScript的交互。在实际项目中,这些库可以协同工作,例如:通过`json-simple`处理服务器返回的JSON...
Rhino是一个完全用Java编写的JavaScript引擎,它实现了ECMAScript Edition 3 (ES3)规范,并由Mozilla公司维护。在Java 6.0版本中,Java开始支持JSR 223规范,这为Java提供了一套脚本语言执行框架,Rhino引擎正是该...
Rhino是由Mozilla开发的一个开源JavaScript引擎,它是完全用Java实现的,因此可以在Java平台上运行JavaScript代码。Rhino以其高性能和强大的JavaScript API著称,支持完整的ECMAScript 3规范,并且可以编译...
这个框架的核心是Rhino JavaScript引擎,一个由Mozilla开发的高性能JavaScript实现,它运行在Java虚拟机(JVM)上。RingoJS提供了一个模块系统、命令行工具和一组内置模块,使得构建可扩展、高性能的网络应用变得...
**Server-side JavaScript解决方案**的对比主要包括了Node.js、Rhino等不同的技术栈。每种解决方案都有其特点和适用场景,开发者可以根据项目需求选择合适的工具。 ### SproutCore **SproutCore**是一个用于构建...
1. **RhinoJS引擎**:Rhino是由Mozilla开发的一个开源JavaScript引擎,它完全用Java编写,能够将JavaScript代码编译成Java字节码执行。Rhino的优势在于其速度和对ECMAScript标准的兼容性,以及与Java平台的深度整合...
Rhino是Mozilla开发的一个开源JavaScript解释器,它可以嵌入到Java应用程序中运行JavaScript代码。在KGDB的场景中,Rhino可能被用来执行用户在KakaoTalk群聊中输入的JavaScript命令或者实现一些复杂的功能逻辑。 ...