How to map object to Array only for first level. JS
I have the object:
obj = {
a: 'aVal',
b: {
bSub_1: 'bSub_1_value',
bSub_2: 'bSub_2_value'
}
}
I need to map this object to an array
['aVal', {bSub_1: 'bSub_1_value', bSub_2: 'bSub_2_value'}]
I try to use Object.values(obj)
but this approach cast all object levels to the array, however, I need casting only first.
How I can do this?
javascript arrays
add a comment |
I have the object:
obj = {
a: 'aVal',
b: {
bSub_1: 'bSub_1_value',
bSub_2: 'bSub_2_value'
}
}
I need to map this object to an array
['aVal', {bSub_1: 'bSub_1_value', bSub_2: 'bSub_2_value'}]
I try to use Object.values(obj)
but this approach cast all object levels to the array, however, I need casting only first.
How I can do this?
javascript arrays
What is the output you are getting when usingObject.values(obj)
?
– Hassan Imam
Nov 14 '18 at 13:01
add a comment |
I have the object:
obj = {
a: 'aVal',
b: {
bSub_1: 'bSub_1_value',
bSub_2: 'bSub_2_value'
}
}
I need to map this object to an array
['aVal', {bSub_1: 'bSub_1_value', bSub_2: 'bSub_2_value'}]
I try to use Object.values(obj)
but this approach cast all object levels to the array, however, I need casting only first.
How I can do this?
javascript arrays
I have the object:
obj = {
a: 'aVal',
b: {
bSub_1: 'bSub_1_value',
bSub_2: 'bSub_2_value'
}
}
I need to map this object to an array
['aVal', {bSub_1: 'bSub_1_value', bSub_2: 'bSub_2_value'}]
I try to use Object.values(obj)
but this approach cast all object levels to the array, however, I need casting only first.
How I can do this?
javascript arrays
javascript arrays
asked Nov 14 '18 at 12:52
PavelPavel
449522
449522
What is the output you are getting when usingObject.values(obj)
?
– Hassan Imam
Nov 14 '18 at 13:01
add a comment |
What is the output you are getting when usingObject.values(obj)
?
– Hassan Imam
Nov 14 '18 at 13:01
What is the output you are getting when using
Object.values(obj)
?– Hassan Imam
Nov 14 '18 at 13:01
What is the output you are getting when using
Object.values(obj)
?– Hassan Imam
Nov 14 '18 at 13:01
add a comment |
2 Answers
2
active
oldest
votes
This answer is more of clarification rather than answer.
.....however, I need casting only first.
That is not quite clear.
It seems pretty straight with Object.values().
The
Object.values()
method returns an array of a given object's own enumerable property values, in the same order as that provided by a for...in loop (the difference being that a for-in loop enumerates properties in the prototype chain as well).
Please notice how the below snippet produces the exact output you expect:
var obj = {
a: 'aVal',
b: {
bSub_1: 'bSub_1_value',
bSub_2: 'bSub_2_value'
}
}
var res = Object.values(obj);
console.log(res);
wow, you right! This not precisely quotes from my app because I wanted to make an easy example. But in reality, I make mistake. Probably I should delete this question. My first solution absolutely right but backend send invalid data in the deep of object and I missed it.
– Pavel
Nov 14 '18 at 16:28
add a comment |
Just another way of doing the same
Object.keys(obj).map(e => obj[e])
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53300699%2fhow-to-map-object-to-array-only-for-first-level-js%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
This answer is more of clarification rather than answer.
.....however, I need casting only first.
That is not quite clear.
It seems pretty straight with Object.values().
The
Object.values()
method returns an array of a given object's own enumerable property values, in the same order as that provided by a for...in loop (the difference being that a for-in loop enumerates properties in the prototype chain as well).
Please notice how the below snippet produces the exact output you expect:
var obj = {
a: 'aVal',
b: {
bSub_1: 'bSub_1_value',
bSub_2: 'bSub_2_value'
}
}
var res = Object.values(obj);
console.log(res);
wow, you right! This not precisely quotes from my app because I wanted to make an easy example. But in reality, I make mistake. Probably I should delete this question. My first solution absolutely right but backend send invalid data in the deep of object and I missed it.
– Pavel
Nov 14 '18 at 16:28
add a comment |
This answer is more of clarification rather than answer.
.....however, I need casting only first.
That is not quite clear.
It seems pretty straight with Object.values().
The
Object.values()
method returns an array of a given object's own enumerable property values, in the same order as that provided by a for...in loop (the difference being that a for-in loop enumerates properties in the prototype chain as well).
Please notice how the below snippet produces the exact output you expect:
var obj = {
a: 'aVal',
b: {
bSub_1: 'bSub_1_value',
bSub_2: 'bSub_2_value'
}
}
var res = Object.values(obj);
console.log(res);
wow, you right! This not precisely quotes from my app because I wanted to make an easy example. But in reality, I make mistake. Probably I should delete this question. My first solution absolutely right but backend send invalid data in the deep of object and I missed it.
– Pavel
Nov 14 '18 at 16:28
add a comment |
This answer is more of clarification rather than answer.
.....however, I need casting only first.
That is not quite clear.
It seems pretty straight with Object.values().
The
Object.values()
method returns an array of a given object's own enumerable property values, in the same order as that provided by a for...in loop (the difference being that a for-in loop enumerates properties in the prototype chain as well).
Please notice how the below snippet produces the exact output you expect:
var obj = {
a: 'aVal',
b: {
bSub_1: 'bSub_1_value',
bSub_2: 'bSub_2_value'
}
}
var res = Object.values(obj);
console.log(res);
This answer is more of clarification rather than answer.
.....however, I need casting only first.
That is not quite clear.
It seems pretty straight with Object.values().
The
Object.values()
method returns an array of a given object's own enumerable property values, in the same order as that provided by a for...in loop (the difference being that a for-in loop enumerates properties in the prototype chain as well).
Please notice how the below snippet produces the exact output you expect:
var obj = {
a: 'aVal',
b: {
bSub_1: 'bSub_1_value',
bSub_2: 'bSub_2_value'
}
}
var res = Object.values(obj);
console.log(res);
var obj = {
a: 'aVal',
b: {
bSub_1: 'bSub_1_value',
bSub_2: 'bSub_2_value'
}
}
var res = Object.values(obj);
console.log(res);
var obj = {
a: 'aVal',
b: {
bSub_1: 'bSub_1_value',
bSub_2: 'bSub_2_value'
}
}
var res = Object.values(obj);
console.log(res);
edited Nov 14 '18 at 13:17
answered Nov 14 '18 at 12:58
MamunMamun
26.9k71630
26.9k71630
wow, you right! This not precisely quotes from my app because I wanted to make an easy example. But in reality, I make mistake. Probably I should delete this question. My first solution absolutely right but backend send invalid data in the deep of object and I missed it.
– Pavel
Nov 14 '18 at 16:28
add a comment |
wow, you right! This not precisely quotes from my app because I wanted to make an easy example. But in reality, I make mistake. Probably I should delete this question. My first solution absolutely right but backend send invalid data in the deep of object and I missed it.
– Pavel
Nov 14 '18 at 16:28
wow, you right! This not precisely quotes from my app because I wanted to make an easy example. But in reality, I make mistake. Probably I should delete this question. My first solution absolutely right but backend send invalid data in the deep of object and I missed it.
– Pavel
Nov 14 '18 at 16:28
wow, you right! This not precisely quotes from my app because I wanted to make an easy example. But in reality, I make mistake. Probably I should delete this question. My first solution absolutely right but backend send invalid data in the deep of object and I missed it.
– Pavel
Nov 14 '18 at 16:28
add a comment |
Just another way of doing the same
Object.keys(obj).map(e => obj[e])
add a comment |
Just another way of doing the same
Object.keys(obj).map(e => obj[e])
add a comment |
Just another way of doing the same
Object.keys(obj).map(e => obj[e])
Just another way of doing the same
Object.keys(obj).map(e => obj[e])
answered Nov 14 '18 at 13:05
Parnab SanyalParnab Sanyal
442313
442313
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53300699%2fhow-to-map-object-to-array-only-for-first-level-js%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
What is the output you are getting when using
Object.values(obj)
?– Hassan Imam
Nov 14 '18 at 13:01