Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.javascript > #22371
| Message-ID | <23946178.EFlsh5Ejh5@PointedEars.de> (permalink) |
|---|---|
| From | Thomas 'PointedEars' Lahn <PointedEars@web.de> |
| Organization | PointedEars Software (PES) |
| Date | 2013-12-20 22:29 +0100 |
| Subject | Re: Date Conversion ? |
| Newsgroups | comp.lang.javascript |
| References | <bh9en6Foh76U1@mid.individual.net> <5f4va916l0r2qoto1r4iq5dh0i0dnqthnv@hive.bjoern.hoehrmann.de> <3082498.rgpu3afg7L@PointedEars.de> |
Thomas 'PointedEars' Lahn wrote:
> Bjoern Hoehrmann wrote:
>> A simple solution would be to use a Regex to split the value into its
>> components and converting into a form like `yyyymmdd`. You can then use
>> string comparison to find the minimum and maximum value (you could sort
>> the values but that has non-linear worst case behavior). In Perl,
>>
>> my ($m, $d, $y) = m#(\S+)\s+(\d+)/(\d+)#;
>> $m = {
>> Jan => 1,
>> Feb => 2,
>> ...
>> }->{$m};
>>
>> my $comparable = sprintf "%04u%02u%02u", $y, $m, $d;
>>
>> […]
>
> In JavaScript 1.5 and later, as in other implementations of ECMAScript
Edition _3_ and later,
> you can do much the same as in Perl:
>
> […]
> /*
> * or
>
> var m = ({
> "Jan": 1,
> "Feb": 2,
> …
> })[matches.groups["m"]];
>
> * with JSX:regexp.js [2]
> */
> var m = ({
> "Jan": 1,
> "Feb": 2,
> …
> })[matches[0]];
var m = {
"Jan": 1,
"Feb": 2,
…
}[matches[0]];
(and similar; without parentheses) suffices because the right-hand side of
the assignment is evaluated in Expression context, not Statement context.
This is different with
var s = '{"foo": "bar"}';
/* Syntax error in the /Program/ parsed by eval() */
var o = eval(s):
/* Correct syntax in the /Program/ parsed by eval() */
var o = eval("(" + s + ")"):
– as an insecure but backwards-compatible stand-in for JSON.parse() – and
when for some reason you want to access a specific object referred by
another object's property, based on a name:
var s = "foo";
{
"foo": ["baz", "bar"]
}[s].sort();
is a Syntax error;
var s = "foo";
({
"foo": ["baz", "bar"]
})[s].sort();
is not.
--
PointedEars
Twitter: @PointedEars2
Please do not Cc: me. / Bitte keine Kopien per E-Mail.
Back to comp.lang.javascript | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Date Conversion ? "Mel Smith" <med_cutout_syntel@aol.com> - 2013-12-16 15:55 -0700
Re: Date Conversion ? Bjoern Hoehrmann <bjoern@hoehrmann.de> - 2013-12-17 01:06 +0100
Re: Date Conversion ? Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2013-12-19 12:34 +0100
Re: Date Conversion ? Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2013-12-20 22:29 +0100
Re: Date Conversion ? Joao Rodrigues <groups_jr-1@yahoo.com.br> - 2013-12-23 10:00 -0200
Re: Date Conversion ? JJ <duh@nah.meh> - 2013-12-17 07:06 +0700
Re: Date Conversion ? Denis McMahon <denismfmcmahon@gmail.com> - 2013-12-17 00:35 +0000
Re: Date Conversion ? "Mel Smith" <med_cutout_syntel@aol.com> - 2013-12-16 18:16 -0700
Re: Date Conversion ? "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2013-12-17 10:09 +0100
Re: Date Conversion ? Denis McMahon <denismfmcmahon@gmail.com> - 2013-12-17 17:02 +0000
Re: Date Conversion ? Dr J R Stockton <reply1300@merlyn.demon.co.uk.invalid> - 2013-12-18 19:14 +0000
Re: Date Conversion ? "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2013-12-19 15:42 +0100
Re: Date Conversion ? "Michael F. Stemper" <michael.stemper@gmail.com> - 2013-12-19 09:20 -0600
Re: Date Conversion ? "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2013-12-20 10:04 +0100
Re: Date Conversion ? Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2013-12-17 15:12 +0100
Re: Date Conversion ? Joao Rodrigues <groups_jr-1@yahoo.com.br> - 2013-12-17 18:10 -0200
Re: Date Conversion ? Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2013-12-17 21:42 +0100
Re: Date Conversion ? Bjoern Hoehrmann <bjoern@hoehrmann.de> - 2013-12-18 13:36 +0100
Re: Date Conversion ? Dr J R Stockton <reply1300@merlyn.demon.co.uk.invalid> - 2013-12-17 19:02 +0000
Re: Date Conversion ? "Mel Smith" <med_cutout_syntel@aol.com> - 2013-12-17 20:51 -0700
Re: Date Conversion ? Dr J R Stockton <reply1300@merlyn.demon.co.uk.invalid> - 2013-12-19 20:21 +0000
Re: Date Conversion ? "Mel Smith" <med_cutout_syntel@aol.com> - 2013-12-20 09:52 -0700
Re: Date Conversion ? Dr J R Stockton <reply1300@merlyn.demon.co.uk.invalid> - 2013-12-21 20:41 +0000
Re: Date Conversion ? "Mel Smith" <med_cutout_syntel@aol.com> - 2013-12-22 09:52 -0700
csiph-web