JavaScript数组与C#数组

JavaScript Array vs C# Array

本文关键字:数组 JavaScript      更新时间:2024-03-14

这个JavaScript数组显示的是什么类型的数组?一维、二维还是三维?同样,这个数组在C#中的确切表示是什么?

var arr = new Array ([34.01843, -118.491046], [34.006673, -118.486562], [34.009714, -118.480296], [34.010408, -118.473215], [34.01521, -118.474889], [34.022502, -118.480124],
            [34.024423, -118.459868], [34.024885, -118.44871], [34.002368, -118.482828], [34.003791, -118.473001], [34.015922, -118.457422], [34.022147, -118.457894],
            [34.028904, -118.46725], [34.030114, -118.481326], [34.03143, -118.494029], [34.031643, -118.504758], [34.029616, -118.515058], [34.001834, -118.451414]);

此数组中值的数据类型为双。

这是一个锯齿状数组,其中每个内部数组的长度为2。

在C#中,您可以使用:

var arr = new [] {
    new[]{34.01843, -118.491046}, new[]{34.006673, -118.486562}, new[]{34.009714, -118.480296},
    //...
};

其为CCD_ 1;但是,您也可以选择使用double[,](但它将具有不同的语义):

var arr = new [,] {
    {34.01843, -118.491046}, {34.006673, -118.486562}, {34.009714, -118.480296},
    //...
};

从技术上讲,它在c#中没有"精确的表示",这取决于数据在每一端的序列化和反序列化方式。

我敢说,像List<Tuple<double,double>>这样的数据类型在c端会更合适。