Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在javascript/jquery中使用产品名称及其缩写的列表_Javascript_Jquery - Fatal编程技术网

在javascript/jquery中使用产品名称及其缩写的列表

在javascript/jquery中使用产品名称及其缩写的列表,javascript,jquery,Javascript,Jquery,我是JS的新手。在我要扩展的应用程序中,我必须扩展到不同类型的视图。我一个,我想看到完整的产品名称,在另一个只有他们的缩写 我不想硬编码它们,而是将它们写在一个文件中。实现这一目标的好方法是什么?我考虑创建一个json/xml/text文件,它看起来像这样 'product name 1' : 'abbr1' 'product name 2' : 'abbr2' [...] 但我需要结果在两个方向上都起作用,比如传递缩写和全名,或者反过来。我可以使用javascript和jquery 编辑:我

我是JS的新手。在我要扩展的应用程序中,我必须扩展到不同类型的视图。我一个,我想看到完整的产品名称,在另一个只有他们的缩写

我不想硬编码它们,而是将它们写在一个文件中。实现这一目标的好方法是什么?我考虑创建一个json/xml/text文件,它看起来像这样

'product name 1' : 'abbr1'
'product name 2' : 'abbr2'
[...]
但我需要结果在两个方向上都起作用,比如传递缩写和全名,或者反过来。我可以使用javascript和jquery


编辑:我不想硬编码数据,因为产品可能会发生更改,所以我不希望它们出现在源代码中。我认为像这样经常更改的内容应该存储在源代码之外,以便更容易更改。

将您的产品数据放在全局数组中:

<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>

功能产品(名称、代码){
this.name=名称;
this.code=代码;
};
var productArray=[新产品(“苹果”、“a”)、新产品(“橙色”、“o”)];
//用户阵列
对于(变量i=0;i
将产品数据放入全局数组:

<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>

功能产品(名称、代码){
this.name=名称;
this.code=代码;
};
var productArray=[新产品(“苹果”、“a”)、新产品(“橙色”、“o”)];
//用户阵列
对于(变量i=0;i
您可以在JSON文件中创建产品数组。比如:

[{name: "Product 1", abbr: "pr1"}, {name: "Product 2", abbr: "pr2}...]
然后您可以使用如下方法:

$.getJSON( "ajax/test.json", function( json ) {
    // do something with the json
});
然而,尽管如此。我看不出这种方法有什么好处,因为JSON也是硬编码的


编辑:事实上我确实看到了好处。这至少将数据源与数据检索分离。

您可以在JSON文件中创建产品数组。比如:

[{name: "Product 1", abbr: "pr1"}, {name: "Product 2", abbr: "pr2}...]
然后您可以使用如下方法:

$.getJSON( "ajax/test.json", function( json ) {
    // do something with the json
});
然而,尽管如此。我看不出这种方法有什么好处,因为JSON也是硬编码的



编辑:事实上我确实看到了好处。这至少将数据源与数据检索分离。

出于什么目的,您希望将其写入文件?产品可能会发生更改,因此我不希望它们出现在源代码中。我认为像这样经常更改的东西应该存储在源代码之外,以便更容易更改。这都是客户端JavaScript吗?遗憾的是,我还不知道如何回答你的问题。当我阅读本主题时,也许它可以回答您的问题,即我正在扩展MediaWiki实现。我可以接触到整个消息来源。MediaWiki的实例是由其他人设置的,因此我不知道有关该实例的详细信息。出于什么目的,您希望将其写入文件?产品可能会发生更改,因此我不希望它们出现在源代码中。我认为像这样经常更改的东西应该存储在源代码之外,以便更容易更改。这都是客户端JavaScript吗?遗憾的是,我还不知道如何回答你的问题。当我阅读本主题时,也许它可以回答您的问题,即我正在扩展MediaWiki实现。我可以接触到整个消息来源。MediaWiki的实例是由其他人设置的,所以我不知道这方面的细节。好吧,正如我说的,我对JS(以及一般的脚本语言)是新手,那么我该判断谁呢。。但是,难道没有更优雅的方式来实现这一点吗?产品可能会发生变化,我不认为强制对源代码进行操作是一种好的方式。@JacobS是的,它肯定会发生变化。因为您不需要“硬编码”数组,而是使用服务器端编写它。您使用的服务器语言是什么?(php、asp.net、JSP…?)嘿,谢谢你的帮助-我将使用Lama的有用方法tho。好吧,正如我说的,我对JS(以及一般的脚本语言)是新手,那么我该评判谁呢。。但是,难道没有更优雅的方式来实现这一点吗?产品可能会发生变化,我不认为强制对源代码进行操作是一种好的方式。@JacobS是的,它肯定会发生变化。因为您不需要“硬编码”数组,而是使用服务器端编写它。您使用的服务器语言是什么?(php、asp.net、JSP…?嘿,谢谢你的帮助-我将使用有用的Lama方法tho。谢谢你,我会使用它。注意,如果你不熟悉异步查询,请阅读一些有关异步查询的内容。getJSON函数是异步的,这意味着在JSON上执行的函数不能保证以顺序方式执行。谢谢大家的提醒!谢谢,我会用它的。当心,如果你不熟悉异步查询,请阅读一下。getJSON函数是异步的,这意味着在JSON上执行的函数不能保证以顺序方式执行。谢谢大家的提醒!