我是JS的新手。在我要扩展的应用程序中,我必须使用不同类型的视图。我一个,我希望看到完整的产品名称,而另一个只看到它们的缩写。
我不想对它们进行硬编码,而是将它们写在文件中。有什么好办法可以实现这一目标?我想过创建一个看起来像这样的json / xml / text文件
'product name 1' : 'abbr1'
'product name 2' : 'abbr2'
[...]
但是我需要结果在两个方向上工作,比如传递一个缩写并获得全名或反过来。我可以使用javascript和jquery。
编辑:我不想对数据进行硬编码,因为产品可能会发生变化,因此我不希望它们出现在源代码中。我认为经常更改的这类内容应该存储在源代码之外,以便更容易更改。
答案 0 :(得分:1)
将您的产品数据放在全局数组中:
<script>
function product(name, code) {
this.name = name;
this.code = code;
};
var productArray = [ new product("Apple", "a"), new product("Orange", "o") ];
// user array
for (var i = 0; i < productArray.length; ++i)
if (productArray[i].name == "Apple")
console.log(productArray[i].code);
</script>
答案 1 :(得分:1)
您可以在JSON文件中创建产品数组。类似的东西:
[{name: "Product 1", abbr: "pr1"}, {name: "Product 2", abbr: "pr2}...]
然后您可以使用jQuery's getJSON方法:
$.getJSON( "ajax/test.json", function( json ) {
// do something with the json
});
然而,话虽如此。我没有看到这种方法带来太多好处,因为JSON也会被硬编码。
编辑:其实我确实看到了一个好处。这至少将您的数据源与数据检索分离。