重新构造数组

我的脚本读取 EventSource,并在一条消息中从变量中获取一些行数据。该变量将是一个数组,我的脚本将数组分解,并且对于每个点,它都会用 y 值翻转 x。然后它将每个点作为发布请求发送。无论如何我可以将数组重新组合在一起,然后在翻转每个 x 和 y 值后发送发布请求吗?


这是我的脚本:


  var evtSource = new EventSource("http://URL.com/");


evtSource.onmessage = function(e) {

var obj = JSON.parse(e.data);

var line = JSON.stringify(obj.line)

var line22 = obj.line



//console.log(line22)


line22.forEach(function(point, index){

console.log(JSON.stringify(point)); // console log example// -> "[120,250]"

    const [x, y] = point;


console.log(`x: ${x}, y: ${y}`);


    var FlipXYvalues = "[[" + y + "," + x + "]]"; // Complies it again... flips the values..



    var ident = "String"

if (obj.ident === ident) //the string...

{

$.post("http://URL.com/", {

            l: (FlipXYvalues),

            w : (obj.lineWidth),

            c: (obj.lineColor.replace("#", "")),

            o: ("100"),

            f: ("1"),

            _: ("false")

 })

}

});

}


DIEA
浏览 122回答 1
1回答

holdtom

您可以使用Array#map()基于其他数组创建一个新数组line22 = [[1,2],[3,4],[5,6],[7,8]];var newLines = line22.map(point => {  return [point[1], point[0]];});//using array destructuring//if you dont want to mess with specifying indexesvar newLines = line22.map(([x,y]) => {  return [y,x];});console.log(JSON.stringify(newLines));//$.post("http://URL.com/", {l:newLines});
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript