我的数据集是一个对象数组,它们都只有两个键(id
和name
):
[{ id: 1, name: 'Foo'}, { id: 2, name: 'Bar'}, { id: 3, name: 'FooBar'}, { id: 4, name: 'BarFoo'}]
Run Code Online (Sandbox Code Playgroud)
我想以这样的方式解构它们,最终分别得到一个 id 数组和一个 name 数组:
[1, 2, 3, 4] // ids
['Foo', 'Bar', 'FooBar', 'BarFoo'] // name
Run Code Online (Sandbox Code Playgroud)
我这样做了,但我认为通过解构可能可以做得更好:
[{ id: 1, name: 'Foo'}, { id: 2, name: 'Bar'}, { id: 3, name: 'FooBar'}, { id: 4, name: 'BarFoo'}]
Run Code Online (Sandbox Code Playgroud)
我搜索了我在SO和其他地方的所有内容,但找不到答案,这主要是由于我有限的JS知识.
任何人都可以告诉我如何从数组中提取类似于以下内容的值(dataLayer中的增强型电子商务数组);
var products = [
{ brand: "brandx", category: "categorya", name: "name123" },
{ brand: "brandy", category: "categoryb", name: "name345" }
];
Run Code Online (Sandbox Code Playgroud)
我想在这种情况下提取名称,最后得到另一个只包含值的数组,例如[name123,name345].我想再将它推入dataLayer,但我想我自己可以做到这一点.
我确实取得了一些成功,但这只是在选择名字值时.
提前感谢您提供任何帮助
马特
DashboardService.GetDateList($scope.datestart, $scope.dateend).then(function (response) {
$scope.listdate = response.data;
});
Run Code Online (Sandbox Code Playgroud)
我从上面的这个函数得到一个数组列表
[{"day":1,"sql_date":"2017-04-01T00:00:00"},
{"day":2,"sql_date":"2017-04-02T00:00:00"},
{"day":3,"sql_date":"2017-04-03T00:00:00"},
{"day":4,"sql_date":"2017-04-04T00:00:00"},
{"day":5,"sql_date":"2017-04-05T00:00:00"}
Run Code Online (Sandbox Code Playgroud)
我怎么能把这个数组的全天价值推到一个新的.
这是我的阵列:
data = [{"src": 'a'},
{'src': 'b'},
{'src': 'c'}];
Run Code Online (Sandbox Code Playgroud)
但我想改变这样的关键:
data = [{"letter": 'a'},
{'letter': 'b'},
{'letter': 'c'}];
Run Code Online (Sandbox Code Playgroud) 我有这样一个数组:
[
{foo: 1, bar: 2},
{foo: 3, bar: 4}
]
Run Code Online (Sandbox Code Playgroud)
什么是最简洁和ES6方式获得只有foo
值的数组?
预期结果将是:
[1, 3]
Run Code Online (Sandbox Code Playgroud) 这是我的目标:
"names": [{
"first": "Linda"
},
{
"first": "Maverick"
},
];
Run Code Online (Sandbox Code Playgroud)
我怎样才能转换它,以便我得到一个只包含first
值的数组:
["Linda", "Maverick"]
Run Code Online (Sandbox Code Playgroud) 我想将JSON字符串转换为包含JSON值的一组数组。之后json.stringify(jsonmybe)
并提醒它显示[{"role":"noi_user"},{"role":"bert_user"}]
(我将其视为JSON)。我想要得到的noi_user
,并bert_user
和它们设置成JavaScript数组。像['noi_user','bert_user']
在每个值引号。
我做了var stringy = json.parse()
和警报显示[object Object]
。并进一步添加此行
for (var i = 0; i < stringy.length; i++) {
arr.push(stringy[i]['role']);}
Run Code Online (Sandbox Code Playgroud)
并且arr
在警报时我得到的是逗号值,但是逗号丢失了,因为我在文本字段中显示了它们,它变成了一个长字符串,例如noi_userbert_user
我真正想要的是从[{"role":"noi_user"},{"role":"bert_user"}]
到['noi_user','bert_user']
我是 JavaScript 新手。在没有 for 循环的情况下从字典列表中提取特定键的值的最佳方法是什么?例如:
var = [{ name: "Rusty", type: "human", legs: 2, head: 1 },
{ name: "Alex", type: "human", legs: 2, head: 1 },
{ name: "Lassie", type: "dog", legs: 4, head: 1 },
{ name: "Spot", type: "dog", legs: 4, head: 1 },
{ name: "Polly", type: "bird", legs: 2, head: 1 },
{ name: "Fiona", type: "plant", legs: 0, head: 1 }]
Run Code Online (Sandbox Code Playgroud)
我想将腿的值提取为数组。
var legs = [2,2,4,4,2,0]
Run Code Online (Sandbox Code Playgroud)
提前致谢
我有一个像下面这样的对象数组,让我们说arrayValues
:
{ field1 : "933", field2 : "something", fieldN: "344" }
{ field1 : "21", field2 : "something", fieldN: "344" }
{ field1 : "34", field2 : "something", fieldN: "344" }
Run Code Online (Sandbox Code Playgroud)
使用jQuery foreach我试图获取field1
数组中每个对象的值,然后将它们添加到另一个数组,让我们说newArray
:
var newArray = [];
$.each(arrayValues, function () {
newArray.push('what to put here?');
});
Run Code Online (Sandbox Code Playgroud)
最后,newArray
应包含:933, 21, 34
这该怎么做?
我目前有一个有 2 个级别的数组。我试图从初始数组构建两个新数组,但似乎坚持使用的方法。我尝试了 forEach()、while 循环以及 push 都无济于事。
我当前的数组结构:
[
{
"attributes": {
"Summary": 10,
"class": "Blue"
}
},
{
"attributes": {
"Summary": 63,
"class":"Red"
}
}
]
Run Code Online (Sandbox Code Playgroud)
我希望构建两个数组,一个用于汇总值,另一个用于类值。
我的 forEach 或 while 循环方法是否在正确的路径上?