Jquery 过滤对象并为数组指定属性值?

Jquery 过滤对象并为数组指定属性值?,jquery,knockout.js,Jquery,Knockout.js,我有一个ko对象,它有一些属性。我只需要ItemName属性的值 是否可以筛选此对象并获取ItemName属性值并将其推送到数组中 items":[{"ItemID":1,"ItemName":"Asia","ItemLevel":0,"ItemParentID":0}, {"ItemID":2,"ItemName":"Europe","ItemLevel":1,"ItemParentID":0}, {"ItemID":3,"ItemName":"Africa",

我有一个ko对象,它有一些属性。我只需要ItemName属性的值

是否可以筛选此对象并获取ItemName属性值并将其推送到数组中

items":[{"ItemID":1,"ItemName":"Asia","ItemLevel":0,"ItemParentID":0},
        {"ItemID":2,"ItemName":"Europe","ItemLevel":1,"ItemParentID":0},
        {"ItemID":3,"ItemName":"Africa","ItemLevel":2,"ItemParentID":0}]
因此,我们得出以下结论:

array[0] = "Asia"
array[1] = "Europe"
array[2] = "Africa"

ko.utils.arrayFilter(items(), function(item) {
            return item.ItemName();
        });
可以将与包含映射一起使用,以便仅在所需字段上进行复制:

var mapping = {
    'include': ["ItemName""]
}
var viewModel = ko.mapping.fromJS(items, mapping);
可以将与包含映射一起使用,以便仅在所需字段上进行复制:

var mapping = {
    'include': ["ItemName""]
}
var viewModel = ko.mapping.fromJS(items, mapping);
使用arrayMap

items":[{"ItemID":1,"ItemName":"Asia","ItemLevel":0,"ItemParentID":0},
        {"ItemID":2,"ItemName":"Europe","ItemLevel":1,"ItemParentID":0},
        {"ItemID":3,"ItemName":"Africa","ItemLevel":2,"ItemParentID":0}]

var array = ko.utils.arrayMap(items, function(item) {
    return item.ItemName;
});
使用arrayMap

items":[{"ItemID":1,"ItemName":"Asia","ItemLevel":0,"ItemParentID":0},
        {"ItemID":2,"ItemName":"Europe","ItemLevel":1,"ItemParentID":0},
        {"ItemID":3,"ItemName":"Africa","ItemLevel":2,"ItemParentID":0}]

var array = ko.utils.arrayMap(items, function(item) {
    return item.ItemName;
});

您编写了几乎正确的代码。只需将
arrayFilter
替换为
arrayMap

ko.utils.arrayMap(items(), function(item) {
            return item.ItemName();
        });

您编写了几乎正确的代码。只需将
arrayFilter
替换为
arrayMap

ko.utils.arrayMap(items(), function(item) {
            return item.ItemName();
        });