如何使用Javascript和Nodejs以不同方式处理数组

时间:2014-02-26 17:20:28

标签: javascript html arrays node.js socket.io

我正在尝试创建一个传递一个项目的数组,等待来自列表的节点服务器的响应。

我输入JavaScript的数据来自html中的文本区域,然后我试图一次发送一行,它只能在我的nodeJS完成时发送下一个数组项,任何人都可以向我显示任何示例或发布方法一次一个项目。

而不是像我目前所获得的一大块。

<script src="js/socket.io.js"></script>
<script type="text/javascript">
function textareaToArray(t){
    return t.value.split(/[\n\r]+/);
}
function showArray(msg){
    for(i = 0; i < msg.length; i++) {
        // something per item
        socket.emit("dout", { message : msg[i] } );


    }
    // the old code
    // document.getElementById("message").innerHTML = msg.join("&#013;");
}
</script>
<script>
var socket = io.connect("https://json2-c9-ashg1990.c9.io");
socket.on("news", function(data) {
document.getElementById("message").innerHTML = JSON.stringify(data.hello);

});
// socket.emit("my other event", { message : "client emit" } );
</script>

我的完整HTML

<html>
<html>

<head>

<title>Welcome To ....</title>
<script src="js/socket.io.js"></script>
<script type="text/javascript">
function textareaToArray(t){
    return t.value.split(/[\n\r]+/);
}
function showArray(msg){
    for(i = 0; i < msg.length; i++) {
        // something per item
        socket.emit("dout", { message : msg[i] } );


    }
    // the old code
    // document.getElementById("message").innerHTML = msg.join("&#013;");
}
</script>
<script>
var socket = io.connect("https://json2-c9-ashg1990.c9.io");
socket.on("news", function(data) {
document.getElementById("message").innerHTML = JSON.stringify(data.hello);

});
// socket.emit("my other event", { message : "client emit" } );
</script>

</head>

<body>

<h1> WELCOME TO .... </h1>

<form>

<textarea rows="10" cols="60" name="alpha"></textarea>

<br>

<input type="button" value="show array" onclick="showArray(textareaToArray(this.form.alpha ))">

</form>

<br>

<textarea id="message" rows="6" cols="60" name="message"></textarea>

</body>

</html>

1 个答案:

答案 0 :(得分:0)

嗯,你的代码似乎没问题,除了你使用的正则表达式。 您应该使用\n字符拆分字符串。您使用的是\n\r,它不是Windown换行符。

窗口字符序列为\r\n

见这里:http://www.regular-expressions.info/nonprint.html