如何添加“;名称:“;到现有的javascript对象/数组
How to add "name:" to existing javascript object/array
我真的希望你能帮我。我正在从一个Web服务中检索一些数据,我已经将其格式化并放入一个数组中,但我需要数组以如下方式结束:
Phase = [
{"name": "start"},
{"name": "middle"},
{"name": "end"}
];
现在我很确定它看起来是这样的:
Phase{"start", "middle", "end"}
我是用得到的
$.each(tempPhase, function(i, a){
if inArray(a, Phase === -1) Phase.push(a)});
但是如何将"name":部分添加到push();?
我的一个函数需要.name
,我真的无法将其更改为不使用.name,因为该函数依赖于另外两个数组以及这一个
我确信这是一个相当简单的操作,任何帮助都将不胜感激。
/////感谢大家的帮助!!如果我能把两个答案都记为最好的,我会的,因为它们同样有用!:)////
您可以如下使用js map
函数,
var Phase = ["start", "middle", "end"];
Phase = Phase.map(function(elem){
return {"name":elem};
});
http://jsfiddle.net/eA23j/
如果创建自己的inArray
,则几乎没有什么可更改的。
function inArray(value, array)
{
var vName = value.name;
for(var i = array.length; i--;)
{
if(array[i].name == vName) return true;
}
return false;
}
http://jsfiddle.net/2fXJ7/
或者更通用(如果你需要它来做其他事情):
function objectPropertyInArray(value, array, prop)
{
var valProp = value[prop];
for(var i = array.length; i--;)
{
if(array[i][prop] == valProp) return true;
}
return false;
}
相关文章:
- Javascript-如何读取json文件中的列并将其保存在Javascript数组中
- JavaScript数组排序(函数)用于对表行进行排序,而不是排序
- 将Javascript数组发送到控制器ASP.NET MVC
- JavaScript数组包含一个值
- 将JavaScript数组传递给函数
- javascript:数组循环
- 将数据存储在javascript数组中以供进一步使用
- 在Javascript数组中查找绝对最大值
- JavaScript数组优化以提高性能
- 在javascript数组中分散数字
- 如何发送分配列表<字符串>到JavaScript数组或可枚举对象
- Javascript数组动态
- javascript数组元素是否知道其封闭数组
- 将 JSON 数组解析为 JavaScript 数组
- 将Transform和Instance Variable转换为对象的JavaScript数组
- 使用Web Html表单创建Javascript数组
- 从重复的javascript数组结果集中只获取一行
- 如何为Javascript数组()的使用准备PHP变量
- Javascript数组和函数
- 为DataTables aoColumnDefs创建JavaScript数组(JSON格式)