使用数组、对象文字或 JSON 的 javascript 性能更好?

dev*_*s11 5 javascript jquery json object-literal

我陷入困境,因为我需要选择性能最佳的选项。

我现在拥有的是一个简单的数组,例如:

var array = [
   '/index1.html',
   '/index2.html',
   '/index3.html'
];
Run Code Online (Sandbox Code Playgroud)

该数组仅包含大约 60 个选项,但由于我需要按语言分隔,所以我正在考虑其他选项,例如对象文字或 JSON 格式,因此它将包含所有语言和大约 1000 个选项。

var obj = {
            'en' : {
                'title' : 'bla',
                'url':'bla bla bla'                 
            },
            'de' : {
                'title' : 'bla',
                'url':'bla bla bla'                 
            },          
        };
Run Code Online (Sandbox Code Playgroud)

问题是你认为什么最适合这个?谢谢。

ktm*_*124 4

对象字面量和 JSON 是同一件事(更正:参见 Quentin 的评论)

如果您正在搜索一个值,那么 JSON 可以具有更好的性能,因为它是 hashmap 实现,因此查找时间将为 O(1)。

JSON 也更灵活,因为您可以在 JSON 中包含数组,可以包含命名键等。

也就是说,我不会担心这里的性能提升。他们可能可以忽略不计。


如果您尝试将 HTML 页面映射到某种语言,您可以将 URL 存储在由语言缩写(“en”、“de”等)键入的 JSON 中,也可以使用约定来命名文件(索引-en.html、索引-de.html)。这是你的选择。

  • JSON 是一种独立于 JavaScript 的数据格式,尽管它深受 JavaScript 的影响。它与对象文字不同。 (4认同)