JQuery - get the min and max date of an associative array
I have this associative array:
[{"start_date":"2018-11-20", "end_date":"2019-01-20", name:"NO Name"},
{"start_date":"2018-10-10", "end_date":"2019-02-14", name:"Name No"},
{"start_date":"2019-02-15", "end_date":"2019-03-01", name:"No Name No"}]
The value I wanted to get is the minimun
start date which is 2018-10-10
and the maximum
end date which is 2019-03-01
. How can I get that?
What Ive Tried:
data = '[{"start_date":"2018-11-20", "end_date":"2019-01-20", name:"NO Name"},{"start_date":"2018-10-10", "end_date":"2019-02-14", name:"Name No"},{"start_date":"2019-02-15", "end_date":"2019-03-01", name:"No Name No"}]';
var end_date = new Date();
var start_date = new Date();
for (var i=0; i<data.length; i++) {
if (data[i].end_date > end_date) {
end_date = data[i].end_date
}
if (data[i].start_date > start_date) {
start_date = data[i].start_date;
}
}
console.log(end_date);
console.log(start_date);
javascript jquery arrays json
add a comment |
I have this associative array:
[{"start_date":"2018-11-20", "end_date":"2019-01-20", name:"NO Name"},
{"start_date":"2018-10-10", "end_date":"2019-02-14", name:"Name No"},
{"start_date":"2019-02-15", "end_date":"2019-03-01", name:"No Name No"}]
The value I wanted to get is the minimun
start date which is 2018-10-10
and the maximum
end date which is 2019-03-01
. How can I get that?
What Ive Tried:
data = '[{"start_date":"2018-11-20", "end_date":"2019-01-20", name:"NO Name"},{"start_date":"2018-10-10", "end_date":"2019-02-14", name:"Name No"},{"start_date":"2019-02-15", "end_date":"2019-03-01", name:"No Name No"}]';
var end_date = new Date();
var start_date = new Date();
for (var i=0; i<data.length; i++) {
if (data[i].end_date > end_date) {
end_date = data[i].end_date
}
if (data[i].start_date > start_date) {
start_date = data[i].start_date;
}
}
console.log(end_date);
console.log(start_date);
javascript jquery arrays json
add a comment |
I have this associative array:
[{"start_date":"2018-11-20", "end_date":"2019-01-20", name:"NO Name"},
{"start_date":"2018-10-10", "end_date":"2019-02-14", name:"Name No"},
{"start_date":"2019-02-15", "end_date":"2019-03-01", name:"No Name No"}]
The value I wanted to get is the minimun
start date which is 2018-10-10
and the maximum
end date which is 2019-03-01
. How can I get that?
What Ive Tried:
data = '[{"start_date":"2018-11-20", "end_date":"2019-01-20", name:"NO Name"},{"start_date":"2018-10-10", "end_date":"2019-02-14", name:"Name No"},{"start_date":"2019-02-15", "end_date":"2019-03-01", name:"No Name No"}]';
var end_date = new Date();
var start_date = new Date();
for (var i=0; i<data.length; i++) {
if (data[i].end_date > end_date) {
end_date = data[i].end_date
}
if (data[i].start_date > start_date) {
start_date = data[i].start_date;
}
}
console.log(end_date);
console.log(start_date);
javascript jquery arrays json
I have this associative array:
[{"start_date":"2018-11-20", "end_date":"2019-01-20", name:"NO Name"},
{"start_date":"2018-10-10", "end_date":"2019-02-14", name:"Name No"},
{"start_date":"2019-02-15", "end_date":"2019-03-01", name:"No Name No"}]
The value I wanted to get is the minimun
start date which is 2018-10-10
and the maximum
end date which is 2019-03-01
. How can I get that?
What Ive Tried:
data = '[{"start_date":"2018-11-20", "end_date":"2019-01-20", name:"NO Name"},{"start_date":"2018-10-10", "end_date":"2019-02-14", name:"Name No"},{"start_date":"2019-02-15", "end_date":"2019-03-01", name:"No Name No"}]';
var end_date = new Date();
var start_date = new Date();
for (var i=0; i<data.length; i++) {
if (data[i].end_date > end_date) {
end_date = data[i].end_date
}
if (data[i].start_date > start_date) {
start_date = data[i].start_date;
}
}
console.log(end_date);
console.log(start_date);
javascript jquery arrays json
javascript jquery arrays json
edited Nov 20 '18 at 1:54
sad saddest
asked Nov 20 '18 at 1:47


sad saddestsad saddest
338
338
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
You can just sort by start_date
via String.localeCompare
and then get the fist and last element of the resulting array:
const data = [{ "start_date": "2018-11-20", "end_date": "2019-01-20", name: "NO Name" }, { "start_date": "2018-10-10", "end_date": "2019-02-14", name: "Name No" }, { "start_date": "2019-02-15", "end_date": "2019-03-01", name: "No Name No" } ]
const result = data.sort((a,b) => a.start_date.localeCompare(b.start_date))
console.log(result[0], result[result.length-1])
// Just the dates
console.log(result[0].start_date, result[result.length-1].start_date)
Can I get only the dates?
– sad saddest
Nov 20 '18 at 1:59
Sure:console.log(result[0].start_date, result[result.length-1].start_date)
– Akrion
Nov 20 '18 at 2:00
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%2f53385098%2fjquery-get-the-min-and-max-date-of-an-associative-array%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
You can just sort by start_date
via String.localeCompare
and then get the fist and last element of the resulting array:
const data = [{ "start_date": "2018-11-20", "end_date": "2019-01-20", name: "NO Name" }, { "start_date": "2018-10-10", "end_date": "2019-02-14", name: "Name No" }, { "start_date": "2019-02-15", "end_date": "2019-03-01", name: "No Name No" } ]
const result = data.sort((a,b) => a.start_date.localeCompare(b.start_date))
console.log(result[0], result[result.length-1])
// Just the dates
console.log(result[0].start_date, result[result.length-1].start_date)
Can I get only the dates?
– sad saddest
Nov 20 '18 at 1:59
Sure:console.log(result[0].start_date, result[result.length-1].start_date)
– Akrion
Nov 20 '18 at 2:00
add a comment |
You can just sort by start_date
via String.localeCompare
and then get the fist and last element of the resulting array:
const data = [{ "start_date": "2018-11-20", "end_date": "2019-01-20", name: "NO Name" }, { "start_date": "2018-10-10", "end_date": "2019-02-14", name: "Name No" }, { "start_date": "2019-02-15", "end_date": "2019-03-01", name: "No Name No" } ]
const result = data.sort((a,b) => a.start_date.localeCompare(b.start_date))
console.log(result[0], result[result.length-1])
// Just the dates
console.log(result[0].start_date, result[result.length-1].start_date)
Can I get only the dates?
– sad saddest
Nov 20 '18 at 1:59
Sure:console.log(result[0].start_date, result[result.length-1].start_date)
– Akrion
Nov 20 '18 at 2:00
add a comment |
You can just sort by start_date
via String.localeCompare
and then get the fist and last element of the resulting array:
const data = [{ "start_date": "2018-11-20", "end_date": "2019-01-20", name: "NO Name" }, { "start_date": "2018-10-10", "end_date": "2019-02-14", name: "Name No" }, { "start_date": "2019-02-15", "end_date": "2019-03-01", name: "No Name No" } ]
const result = data.sort((a,b) => a.start_date.localeCompare(b.start_date))
console.log(result[0], result[result.length-1])
// Just the dates
console.log(result[0].start_date, result[result.length-1].start_date)
You can just sort by start_date
via String.localeCompare
and then get the fist and last element of the resulting array:
const data = [{ "start_date": "2018-11-20", "end_date": "2019-01-20", name: "NO Name" }, { "start_date": "2018-10-10", "end_date": "2019-02-14", name: "Name No" }, { "start_date": "2019-02-15", "end_date": "2019-03-01", name: "No Name No" } ]
const result = data.sort((a,b) => a.start_date.localeCompare(b.start_date))
console.log(result[0], result[result.length-1])
// Just the dates
console.log(result[0].start_date, result[result.length-1].start_date)
const data = [{ "start_date": "2018-11-20", "end_date": "2019-01-20", name: "NO Name" }, { "start_date": "2018-10-10", "end_date": "2019-02-14", name: "Name No" }, { "start_date": "2019-02-15", "end_date": "2019-03-01", name: "No Name No" } ]
const result = data.sort((a,b) => a.start_date.localeCompare(b.start_date))
console.log(result[0], result[result.length-1])
// Just the dates
console.log(result[0].start_date, result[result.length-1].start_date)
const data = [{ "start_date": "2018-11-20", "end_date": "2019-01-20", name: "NO Name" }, { "start_date": "2018-10-10", "end_date": "2019-02-14", name: "Name No" }, { "start_date": "2019-02-15", "end_date": "2019-03-01", name: "No Name No" } ]
const result = data.sort((a,b) => a.start_date.localeCompare(b.start_date))
console.log(result[0], result[result.length-1])
// Just the dates
console.log(result[0].start_date, result[result.length-1].start_date)
edited Nov 20 '18 at 1:59
answered Nov 20 '18 at 1:52


AkrionAkrion
9,42711224
9,42711224
Can I get only the dates?
– sad saddest
Nov 20 '18 at 1:59
Sure:console.log(result[0].start_date, result[result.length-1].start_date)
– Akrion
Nov 20 '18 at 2:00
add a comment |
Can I get only the dates?
– sad saddest
Nov 20 '18 at 1:59
Sure:console.log(result[0].start_date, result[result.length-1].start_date)
– Akrion
Nov 20 '18 at 2:00
Can I get only the dates?
– sad saddest
Nov 20 '18 at 1:59
Can I get only the dates?
– sad saddest
Nov 20 '18 at 1:59
Sure:
console.log(result[0].start_date, result[result.length-1].start_date)
– Akrion
Nov 20 '18 at 2:00
Sure:
console.log(result[0].start_date, result[result.length-1].start_date)
– Akrion
Nov 20 '18 at 2:00
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%2f53385098%2fjquery-get-the-min-and-max-date-of-an-associative-array%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