Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.javascript > #38192 > unrolled thread

Search array of objects

Started byAndrew Poulos <ap_prog@hotmail.com>
First post2020-02-24 12:10 +1100
Last post2020-02-25 19:47 +0000
Articles 18 — 6 participants

Back to article view | Back to comp.lang.javascript


Contents

  Search array of objects Andrew Poulos <ap_prog@hotmail.com> - 2020-02-24 12:10 +1100
    Re: Search array of objects Andrew Poulos <ap_prog@hotmail.com> - 2020-02-24 14:06 +1100
      Re: Search array of objects luserdroog <luser.droog@gmail.com> - 2020-02-23 21:33 -0800
      Re: Search array of objects Julio Di Egidio <julio@diegidio.name> - 2020-02-24 02:02 -0800
      Re: Search array of objects Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2020-02-24 12:23 +0100
        Re: Search array of objects John G Harris <niam@jghnorth.org.uk.invalid> - 2020-02-24 18:31 +0000
          Re: Search array of objects Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2020-02-25 09:24 +0100
            Re: Search array of objects John G Harris <niam@jghnorth.org.uk.invalid> - 2020-02-25 11:40 +0000
              Re: Search array of objects Julio Di Egidio <julio@diegidio.name> - 2020-02-25 03:57 -0800
              Re: Search array of objects Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2020-02-25 19:02 +0100
                Re: Search array of objects John G Harris <niam@jghnorth.org.uk.invalid> - 2020-02-25 19:18 +0000
                  Re: Search array of objects Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2020-02-25 21:51 +0100
                    Re: Search array of objects John G Harris <niam@jghnorth.org.uk.invalid> - 2020-02-26 16:09 +0000
              Re: Search array of objects Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2020-02-25 19:09 +0100
                Re: Search array of objects "Mark-" <nospam@mapson.xyz> - 2020-02-25 19:18 +0000
                  Re: Search array of objects Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2020-02-25 21:58 +0100
                    Re: Search array of objects John G Harris <niam@jghnorth.org.uk.invalid> - 2020-02-26 16:09 +0000
                Re: Search array of objects John G Harris <niam@jghnorth.org.uk.invalid> - 2020-02-25 19:47 +0000

#38192 — Search array of objects

FromAndrew Poulos <ap_prog@hotmail.com>
Date2020-02-24 12:10 +1100
SubjectSearch array of objects
Message-ID<i_adnaLrBajpv87DnZ2dnUU7-KfNnZ2d@westnet.com.au>
I have an array of 50+ arrays each containing 300+ objects as elements. 
Each individual object looks like

{
   type: "text",
   id: "text01",
   content: "Turn to left",
   disabled: false,
   bg: "small.jpg"
}

So the entire array looks like

[
   [obj1, obj2, obj3...],
   [obj1, obj2, obj3...],
   [obj1, obj2, obj3...],
   ...
]

That is, every sub-array has the same number of objects: 'content', 
'disabled' and 'bg' may differ from sub-array to sub-array.

I need to change the value of 'bg' for the "same" five objects across 
all the sub-arrays.

Currently I'm looping through the top level array and then each object 
in a sub-array looking for the objects in question. Is there a more 
efficient way to do this without looping?

Andrew Poulos

[toc] | [next] | [standalone]


#38193

FromAndrew Poulos <ap_prog@hotmail.com>
Date2020-02-24 14:06 +1100
Message-ID<o8adnRKpOaYkoM7DnZ2dnUU7-XnNnZ2d@westnet.com.au>
In reply to#38192
On 24/02/2020 12:10 pm, Andrew Poulos wrote:
> I have an array of 50+ arrays each containing 300+ objects as elements. 
> Each individual object looks like
> 
> {
>    type: "text",
>    id: "text01",
>    content: "Turn to left",
>    disabled: false,
>    bg: "small.jpg"
> }
> 
> So the entire array looks like
> 
> [
>    [obj1, obj2, obj3...],
>    [obj1, obj2, obj3...],
>    [obj1, obj2, obj3...],
>    ...
> ]
> 
> That is, every sub-array has the same number of objects: 'content', 
> 'disabled' and 'bg' may differ from sub-array to sub-array.
> 
> I need to change the value of 'bg' for the "same" five objects across 
> all the sub-arrays.
> 
> Currently I'm looping through the top level array and then each object 
> in a sub-array looking for the objects in question. Is there a more 
> efficient way to do this without looping?

I tried this (nesting forEach):

slides.forEach(s => {
   s.forEach(item => {
     if (item.type == 'text' && item.hasOwnProperty('content')) {
       item.disabled = !chk; // a value set earlier
     }
   };
});

and it seems to work. Is this a good approach?

Andrew Poulos

[toc] | [prev] | [next] | [standalone]


#38194

Fromluserdroog <luser.droog@gmail.com>
Date2020-02-23 21:33 -0800
Message-ID<b6a4bf9d-4d28-444f-92aa-00750421eb18@googlegroups.com>
In reply to#38193
On Sunday, February 23, 2020 at 9:06:42 PM UTC-6, Andrew Poulos wrote:
> On 24/02/2020 12:10 pm, Andrew Poulos wrote:
> > I have an array of 50+ arrays each containing 300+ objects as elements. 
> > Each individual object looks like
> > 
> > {
> >    type: "text",
> >    id: "text01",
> >    content: "Turn to left",
> >    disabled: false,
> >    bg: "small.jpg"
> > }
> > 
> > So the entire array looks like
> > 
> > [
> >    [obj1, obj2, obj3...],
> >    [obj1, obj2, obj3...],
> >    [obj1, obj2, obj3...],
> >    ...
> > ]
> > 
> > That is, every sub-array has the same number of objects: 'content', 
> > 'disabled' and 'bg' may differ from sub-array to sub-array.
> > 
> > I need to change the value of 'bg' for the "same" five objects across 
> > all the sub-arrays.
> > 
> > Currently I'm looping through the top level array and then each object 
> > in a sub-array looking for the objects in question. Is there a more 
> > efficient way to do this without looping?
> 
> I tried this (nesting forEach):
> 
> slides.forEach(s => {
>    s.forEach(item => {
>      if (item.type == 'text' && item.hasOwnProperty('content')) {
>        item.disabled = !chk; // a value set earlier
>      }
>    };
> });
> 
> and it seems to work. Is this a good approach?
> 

That seems fine. More readable than nested 'for' loops. An alternative
would be to filter instead of an 'if'.

slides.forEach(s => {
  s.filter(i -> i.type == 'text' && i.hasOwnProperty('content')
          ).forEach(i => i.disabled = !chk) });

I'm not sure how best to format this. And not at all sure about the
performance implications.

[toc] | [prev] | [next] | [standalone]


#38195

FromJulio Di Egidio <julio@diegidio.name>
Date2020-02-24 02:02 -0800
Message-ID<2c43df71-caf3-4375-b2ed-6e9c474e23f3@googlegroups.com>
In reply to#38193
On Monday, 24 February 2020 04:06:42 UTC+1, Andrew Poulos  wrote:

> slides.forEach(s => {
>    s.forEach(item => {
>      if (item.type == 'text' && item.hasOwnProperty('content')) {
>        item.disabled = !chk; // a value set earlier
>      }
>    };
> });
> 
> and it seems to work. Is this a good approach?

It depends: how static is the data and how fixed is the search criteria?
If they are (static and fixed: or, to the extent that they are), do a
first pass at startup time to find those objects once and for all.  If
they are not (or, to the extent that they are not), you are indeed stuck
with exhaustive search...

Julio

[toc] | [prev] | [next] | [standalone]


#38196

FromThomas 'PointedEars' Lahn <PointedEars@web.de>
Date2020-02-24 12:23 +0100
Message-ID<2373271.grBdAzqF5M@PointedEars.de>
In reply to#38193
Andrew Poulos wrote:

> On 24/02/2020 12:10 pm, Andrew Poulos wrote:
>> I have an array of 50+ arrays each containing 300+ objects as elements.

Technically it is not actually containing the objects, but just the 
references to them.  You can use that to your advantage (see below).

>> Each individual object looks like
>> 
>> {
>>  type: "text",
>>  id: "text01",
>>  content: "Turn to left",
>>  disabled: false,
>>  bg: "small.jpg"
>> }
>> 
>> So the entire array looks like
>> 
>> [
>>  [obj1, obj2, obj3...],
>>  [obj1, obj2, obj3...],
>>  [obj1, obj2, obj3...],
>>  ...
>> ]
>> 
>> That is, every sub-array has the same number of objects: 'content',
>> 'disabled' and 'bg' may differ from sub-array to sub-array.
>> 
>> I need to change the value of 'bg' for the "same" five objects across
>> all the sub-arrays.
>> 
>> Currently I'm looping through the top level array and then each object
>> in a sub-array looking for the objects in question. Is there a more
>> efficient way to do this without looping?
> 
> I tried this (nesting forEach):
> 
> slides.forEach(s => {
>    s.forEach(item => {

You should rename “s” to “slide”.

>      if (item.type == 'text' && item.hasOwnProperty('content')) {

If you can make sure beforehand that the prototype chain of “item” is empty 
(and you should), then you can use the “in” operator which might be more 
efficient that multiple .hasOwnProperty() calls.

A simple way to achieve that is

  obj = Object.create(null, Object.getOwnPropertyDescriptors(obj));

You can still use methods of Object.prototype on this object by calling them 
directly on it.

JSX:object.js has (deprecated, master) jsx.object.getDataObject() and 
(trunk) jsx.object.createDataObject() for this purpose, but it does not
use the new approach yet.

>        item.disabled = !chk; // a value set earlier

You are not doing here what you described above.

>      }
>    };
> });
> 
> and it seems to work. Is this a good approach?

Probably yes; I would not do it much differently.

If you operate on the same data structure or data several times, you can use 
Array.prototype.filter() to retrieve an array of references to only those 
objects that are of interest, and subsequently only use that array:

  const contentObjs = [];

  slides.forEach(slide => {
    contentObjs.push.apply(
      contentObjs,
      slide.filter(item => 'content' in item)
    );
  });

PoC (suitable to experiment with in the script console):

  var contentObjs = [];
  [[{content: 42}, {no_content: 23}]].forEach(slide => {
    contentObjs.push.apply(
      contentObjs,
      slide.filter(item => 'content' in item)
    );
  });

  /* “[{…}]” */
  console.log(contentObjs);

However, you appear to be doing something like this a lot recently; you 
might want to look into Microsoft LINQ, which is a specification for an API 
and a library with implementations in various languages (including 
ECMAScript implementations) that is specifically designed to handle arrays 
of objects efficiently.

-- 
PointedEars
FAQ: <http://PointedEars.de/faq> | <http://PointedEars.de/es-matrix>
<https://github.com/PointedEars> | <http://PointedEars.de/wsvn/>
Twitter: @PointedEars2 | Please do not cc me./Bitte keine Kopien per E-Mail.

[toc] | [prev] | [next] | [standalone]


#38197

FromJohn G Harris <niam@jghnorth.org.uk.invalid>
Date2020-02-24 18:31 +0000
Message-ID<cj585fl41ik599k3bl7v54hc8q4ldjt5j1@4ax.com>
In reply to#38196
On Mon, 24 Feb 2020 12:23:05 +0100, Thomas 'PointedEars' Lahn
<PointedEars@web.de> wrote:

>Andrew Poulos wrote:
>
>> On 24/02/2020 12:10 pm, Andrew Poulos wrote:
>>> I have an array of 50+ arrays each containing 300+ objects as elements.
>
>Technically it is not actually containing the objects, but just the 
>references to them.  You can use that to your advantage (see below).
  <snip>

Please note that Thomas is talking here about his favourite
implementation of ECMAScript. He is not talking about a required
feature of *every* implementation, as the Standard makes clear.

  John

[toc] | [prev] | [next] | [standalone]


#38198

FromThomas 'PointedEars' Lahn <PointedEars@web.de>
Date2020-02-25 09:24 +0100
Message-ID<71941385.tmnMnQKSv1@PointedEars.de>
In reply to#38197
John G Harris wrote:

> On Mon, 24 Feb 2020 12:23:05 +0100, Thomas 'PointedEars' Lahn
> <PointedEars@web.de> wrote:
>>Andrew Poulos wrote:
>>> On 24/02/2020 12:10 pm, Andrew Poulos wrote:
>>>> I have an array of 50+ arrays each containing 300+ objects as elements.
>>
>>Technically it is not actually containing the objects, but just the
>>references to them.  You can use that to your advantage (see below).
>   <snip>
> 
> Please note that Thomas is talking here about his favourite
> implementation of ECMAScript.

Nonsense.  John G Harris still does not get it, and he is just trolling.
He does not even know what my favorite ECMAScript implementation is.

> He is not talking about a required feature of *every* implementation,
> as the Standard makes clear.

No Edition of the ECMAScript Language Specification makes any statement or 
places any requirements as to how objects are to be implemented in memory.

However, it is unreasonable to assume that an implementation would allocate 
twice the amount of memory to hold two objects with identical data content, 
and would on access copying data from one memory area to another when 
storing and dereferencing memory pointers would be more efficient.

One would wish that one would not have to teach simple logic like this to
John G Harris over and over again.

-- 
PointedEars
FAQ: <http://PointedEars.de/faq> | <http://PointedEars.de/es-matrix>
<https://github.com/PointedEars> | <http://PointedEars.de/wsvn/>
Twitter: @PointedEars2 | Please do not cc me./Bitte keine Kopien per E-Mail.

[toc] | [prev] | [next] | [standalone]


#38199

FromJohn G Harris <niam@jghnorth.org.uk.invalid>
Date2020-02-25 11:40 +0000
Message-ID<vr1a5f1463mctbvbtqhfqackij1k2j8b24@4ax.com>
In reply to#38198
On Tue, 25 Feb 2020 09:24:26 +0100, Thomas Lahn wrote:

>John G Harris wrote:
>
>> On Mon, 24 Feb 2020 12:23:05 +0100, Thomas 'PointedEars' Lahn
>> <PointedEars@web.de> wrote:
>>>Andrew Poulos wrote:
>>>> On 24/02/2020 12:10 pm, Andrew Poulos wrote:
>>>>> I have an array of 50+ arrays each containing 300+ objects as elements.
>>>
>>>Technically it is not actually containing the objects, but just the
>>>references to them.  You can use that to your advantage (see below).
>>   <snip>
>> 
>> Please note that Thomas is talking here about his favourite
>> implementation of ECMAScript.
>
>Nonsense.  John G Harris still does not get it, and he is just trolling.

Disagreeing with Thomas is not trolling, even when it makes him
unhappy.


>He does not even know what my favorite ECMAScript implementation is.

Yes we do. You, Thomas, have made if very obvious that it's any
implementation in which value fields hold references.


>> He is not talking about a required feature of *every* implementation,
>> as the Standard makes clear.
>
>No Edition of the ECMAScript Language Specification makes any statement or 
>places any requirements as to how objects are to be implemented in memory.

Precisely. But every edition says that a value can hold an object.


>However, it is unreasonable to assume that an implementation would allocate 
>twice the amount of memory to hold two objects with identical data content, 
>and would on access copying data from one memory area to another when 
>storing and dereferencing memory pointers would be more efficient.

So! You, Thomas, agree that an ECMAScript implementation could have
values holding objects. Saying that you are describing a poor
implementation is not the point. You are talking about *all* possible
implementations, not just your favourite kinds. You've been lying to
us for years saying that all *must* hold references.

Even worse, you are implying that handing over a long string in a
function call must be done in that inefficient way.


>One would wish that one would not have to teach simple logic like this to
>John G Harris over and over again.

Thomas agrees that it's not all possible implementations. So is it
nearly all, or most, or many, or some, or at least the one with
published source code? Which does 'simple logic' say?

  John

[toc] | [prev] | [next] | [standalone]


#38200

FromJulio Di Egidio <julio@diegidio.name>
Date2020-02-25 03:57 -0800
Message-ID<8e5d8914-b5a4-4687-8323-c96fb44eebbe@googlegroups.com>
In reply to#38199
On Tuesday, 25 February 2020 12:40:28 UTC+1, John G Harris  wrote:
> On Tue, 25 Feb 2020 09:24:26 +0100, Thomas Lahn wrote:

> >He does not even know what my favorite ECMAScript implementation is.
> 
> Yes we do. You, Thomas, have made if very obvious that it's any
> implementation in which value fields hold references.

To say that an array "contains" whatever is perfectly fine, it's simply
informal speech.  Thomas just doesn't understand that distinction, or
the difference between the semantics of JS and its implementation, or
that there is more to programming than just programming, and so on.

What's the point of any polemics, though?  We can read too... while a
little bit of quiet/let-it-go does benefit the group and everybody.

Just my 2c.

Julio

[toc] | [prev] | [next] | [standalone]


#38203

FromThomas 'PointedEars' Lahn <PointedEars@web.de>
Date2020-02-25 19:02 +0100
Message-ID<33677678.XjqO3ij5Cr@PointedEars.de>
In reply to#38199
John G Harris wrote:

> On Tue, 25 Feb 2020 09:24:26 +0100, Thomas Lahn wrote:
>>John G Harris wrote:
>>> He is not talking about a required feature of *every* implementation,
>>> as the Standard makes clear.
>> No Edition of the ECMAScript Language Specification makes any statement 
>> or places any requirements as to how objects are to be implemented in 
>> memory.
> 
> Precisely. But every edition says that a value can hold an object.

No.

-- 
PointedEars
FAQ: <http://PointedEars.de/faq> | <http://PointedEars.de/es-matrix>
<https://github.com/PointedEars> | <http://PointedEars.de/wsvn/>
Twitter: @PointedEars2 | Please do not cc me./Bitte keine Kopien per E-Mail.

[toc] | [prev] | [next] | [standalone]


#38205

FromJohn G Harris <niam@jghnorth.org.uk.invalid>
Date2020-02-25 19:18 +0000
Message-ID<gnsa5fdducr2iehmjfctlnil6n1nee6uk7@4ax.com>
In reply to#38203
On Tue, 25 Feb 2020 19:02:50 +0100, Thomas 'PointedEars' Lahn
<PointedEars@web.de> wrote:

>John G Harris wrote:
>
>> On Tue, 25 Feb 2020 09:24:26 +0100, Thomas Lahn wrote:
>>>John G Harris wrote:
>>>> He is not talking about a required feature of *every* implementation,
>>>> as the Standard makes clear.
>>> No Edition of the ECMAScript Language Specification makes any statement 
>>> or places any requirements as to how objects are to be implemented in 
>>> memory.
>> 
>> Precisely. But every edition says that a value can hold an object.
>
>No.

You mean Yes, don't you. FYI, this is what the different editions of
the Standard say :-


  2nd Edition :
"8 Types
A value is an entity that takes on one of nine types. There are nine
types (Undefined, Null, Boolean, String, Number, Object, Reference,
List, and Completion). Values of type Reference, List, and Completion
are  used only as intermediate results of expression evaluation and
cannot be stored to properties of objects."


  3re Edition : <same as 2nd>


  5th Edition :
"8 Types
An ECMAScript language type corresponds to values that are directly
manipulated by an ECMAScript programmer using the ECMAScript language.
The ECMAScript language types are Undefined, Null, Boolean, String,
Number, and Object."


  5.1th Edition : <same as 5th>


  6th Edition :
"6.1 ECMAScript Language Types
An ECMAScript language type corresponds to values that are directly
manipulated by an ECMAScript programmer using the ECMAScript language.
The ECMAScript language types are Undefined, Null, Boolean, String,
Symbol, Number, and Object. An ECMAScript language value is a value
that is characterized by an ECMAScript language type."


  7th, 8th, 9th, 10th Edition : <same as 6th>


And finally, from the current edition :-

"2 Conformance
A conforming implementation of ECMAScript must provide and support all
the types, values, objects, properties, functions, and program syntax
and semantics described in this specification."

  John

[toc] | [prev] | [next] | [standalone]


#38208

FromThomas 'PointedEars' Lahn <PointedEars@web.de>
Date2020-02-25 21:51 +0100
Message-ID<2524361.kmRSpxrWAo@PointedEars.de>
In reply to#38205
John G Harris wrote:

> On Tue, 25 Feb 2020 19:02:50 +0100, Thomas 'PointedEars' Lahn
> <PointedEars@web.de> wrote:
>>John G Harris wrote:
>>> On Tue, 25 Feb 2020 09:24:26 +0100, Thomas Lahn wrote:
>>>>John G Harris wrote:
>>>>> He is not talking about a required feature of *every* implementation,
>>>>> as the Standard makes clear.
>>>> No Edition of the ECMAScript Language Specification makes any statement
>>>> or places any requirements as to how objects are to be implemented in
>>>> memory.
>>> Precisely. But every edition says that a value can hold an object.
>> No.
> You mean Yes, don't you.

No, I mean “No”.  Different from certain other people, I say what I think,
I try to do as I say (depends on free time), and I say what I mean.

    [Due to technical restrictions I cannot full-quote the follow-up]

> FYI, this is what the different editions of
> the Standard say :-
> 
>   2nd Edition :
> […]
>   3re Edition : <same as 2nd>
> […]
>   5th Edition :
> […]
>   5.1th Edition : <same as 5th>
> […]
>   6th Edition :
> > "6.1 ECMAScript Language Types
> An ECMAScript language type corresponds to values that are directly
> manipulated by an ECMAScript programmer using the ECMAScript language.
> The ECMAScript language types are Undefined, Null, Boolean, String,
> Symbol, Number, and Object. An ECMAScript language value is a value
> that is characterized by an ECMAScript language type."

That does NOT mean that “a value can hold an object”.  It means that
AN OBJECT CAN BE A VALUE.
 
>   7th, 8th, 9th, 10th Edition : <same as 6th>
> […]
> And finally, from the current edition :-
> 
> "2 Conformance
> A conforming implementation of ECMAScript must provide and support all
> the types, values, objects, properties, functions, and program syntax
> and semantics described in this specification."

That does NOT mean that “a value can hold an object”.  It means that
AN OBJECT CAN BE A VALUE.

q.e.d.

You have to learn to read a text COMPREHENSIVELY without adding your your 
own FANTASIES.
 
-- 
PointedEars
FAQ: <http://PointedEars.de/faq> | <http://PointedEars.de/es-matrix>
<https://github.com/PointedEars> | <http://PointedEars.de/wsvn/>
Twitter: @PointedEars2 | Please do not cc me./Bitte keine Kopien per E-Mail.

[toc] | [prev] | [next] | [standalone]


#38212

FromJohn G Harris <niam@jghnorth.org.uk.invalid>
Date2020-02-26 16:09 +0000
Message-ID<ut5d5f99elilrcca87lj54j50ur49jr95f@4ax.com>
In reply to#38208
On Tue, 25 Feb 2020 21:51:33 +0100, Thomas 'PointedEars' Lahn
<PointedEars@web.de> wrote:

>John G Harris wrote:

  <snip>
>>   6th Edition :
>> "6.1 ECMAScript Language Types
>> An ECMAScript language type corresponds to values that are directly
>> manipulated by an ECMAScript programmer using the ECMAScript language.
>> The ECMAScript language types are Undefined, Null, Boolean, String,
>> Symbol, Number, and Object. An ECMAScript language value is a value
>> that is characterized by an ECMAScript language type."
>
>That does NOT mean that “a value can hold an object”.  It means that
>AN OBJECT CAN BE A VALUE.
  <snip>

To an English speaker the two sentences overlap and are compatible.

The term "can hold" is a summary. In exquisite detail, section 6.1 is
saying that no ECMAScript program can detect that the value of a
variable or property is anything other than one of Undefined, Null,
Boolean, String, Symbol, Number, or Object. If a program can detect
that it is some other type, such as "reference", then it is not an
ECMAScript program and is not running in a conforming implementation.

Thus, if a program does
  var v = new Date();
then the value of v is a new Date object. It cannot be anything else.

  John

[toc] | [prev] | [next] | [standalone]


#38204

FromThomas 'PointedEars' Lahn <PointedEars@web.de>
Date2020-02-25 19:09 +0100
Message-ID<4785628.v804Uspv68@PointedEars.de>
In reply to#38199
John G Harris wrote:

> On Tue, 25 Feb 2020 09:24:26 +0100, Thomas Lahn wrote:
>>John G Harris wrote:
>>> On Mon, 24 Feb 2020 12:23:05 +0100, Thomas 'PointedEars' Lahn
>>> <PointedEars@web.de> wrote:
>>>>Andrew Poulos wrote:
>>>>> On 24/02/2020 12:10 pm, Andrew Poulos wrote:
>>>>>> I have an array of 50+ arrays each containing 300+ objects as
>>>>>> elements.
>>>>
>>>>Technically it is not actually containing the objects, but just the
>>>>references to them.  You can use that to your advantage (see below).
>>>   <snip>
>>> 
>>> Please note that Thomas is talking here about his favourite
>>> implementation of ECMAScript.
>>
>>Nonsense.  John G Harris still does not get it, and he is just trolling.
> 
> Disagreeing with Thomas is not trolling, […]

But at least constantly talking about someone in the third person as if they 
would not be reading it, is.
 
It is not my style at all, but I had hoped that "replying" in kind would 
make you think.  I was wrong.  You are so full of yourself that you do not 
even realize it when you are made to look into your own obnoxious character.

>> He does not even know what my favorite ECMAScript implementation is.
> 
> Yes we do. […]

Who appointed you Speaker of the Newsgroup, and when did it happen?

-- 
PointedEars
FAQ: <http://PointedEars.de/faq> | <http://PointedEars.de/es-matrix>
<https://github.com/PointedEars> | <http://PointedEars.de/wsvn/>
Twitter: @PointedEars2 | Please do not cc me./Bitte keine Kopien per E-Mail.

[toc] | [prev] | [next] | [standalone]


#38206

From"Mark-" <nospam@mapson.xyz>
Date2020-02-25 19:18 +0000
Message-ID<r33ruv$1g35$1@gioia.aioe.org>
In reply to#38204
Thomas 'PointedEars' Lahn wrote:

<snip>

This guy is so funny; criticizing John for EXACTLY what Thomas
does/fails to do, all the time.

Too funny.

[toc] | [prev] | [next] | [standalone]


#38209

FromThomas 'PointedEars' Lahn <PointedEars@web.de>
Date2020-02-25 21:58 +0100
Message-ID<6138553.1djjxoWZJs@PointedEars.de>
In reply to#38206
Mark- wrote:

> Thomas 'PointedEars' Lahn wrote:
  ^^^^^^^^^^^^^^^^^^^^^^^^^
> <snip>
> 
> This guy is so funny; criticizing John for EXACTLY what Thomas
  ^^^^^^^^                                                ^^^^^^
> does/fails to do, all the time.

There we have the same sanctimonious pattern of speech again.  I would not 
be too surprised if you would be John G Harris’ sockpuppet.  Trolls often do 
that.
 
> Too funny.

You’re not.  But your posting coming in via aioe.org, I am not surprised.  
This free server has no rules that are consistently enforced, and as a 
result all kinds of nutcases are using it.  It is best to add a killfile 
rule for it.

F’up2 where it belongs

-- 
PointedEars
FAQ: <http://PointedEars.de/faq> | <http://PointedEars.de/es-matrix>
<https://github.com/PointedEars> | <http://PointedEars.de/wsvn/>
Twitter: @PointedEars2 | Please do not cc me./Bitte keine Kopien per E-Mail.

[toc] | [prev] | [next] | [standalone]


#38211

FromJohn G Harris <niam@jghnorth.org.uk.invalid>
Date2020-02-26 16:09 +0000
Message-ID<026d5f1q9ec6capr6scancd0tgapk05l57@4ax.com>
In reply to#38209
On Tue, 25 Feb 2020 21:58:25 +0100, you wrote

See, I'm doing what you asked me to do.

>Mark- wrote:
>
>> Thomas 'PointedEars' Lahn wrote:
>  ^^^^^^^^^^^^^^^^^^^^^^^^^
>> <snip>
>> 
>> This guy is so funny; criticizing John for EXACTLY what Thomas
>  ^^^^^^^^                                                ^^^^^^
>> does/fails to do, all the time.
>
>There we have the same sanctimonious pattern of speech again.  I would not 
>be too surprised if you would be John G Harris’ sockpuppet.  Trolls often do 
>that.

For the record, I use several e-mail addresses. Only one of them is
used for UseNet articles - the one used in this article.


>> Too funny.
>
>You’re not.  But your posting coming in via aioe.org, I am not surprised.  
>This free server has no rules that are consistently enforced, and as a 
>result all kinds of nutcases are using it.  It is best to add a killfile 
>rule for it.

I use eternal-september and no other. I've no idea what aioe is.


>F’up2 where it belongs

No. My reply to your accusation of dishonesty goes where your
accusation went.

  John

[toc] | [prev] | [next] | [standalone]


#38207

FromJohn G Harris <niam@jghnorth.org.uk.invalid>
Date2020-02-25 19:47 +0000
Message-ID<n7ua5fppo7hmn5qavslgh0hpegbeh6rt80@4ax.com>
In reply to#38204
On Tue, 25 Feb 2020 19:09:46 +0100, Thomas 'PointedEars' Lahn
<PointedEars@web.de> wrote:

>John G Harris wrote:
>
>> On Tue, 25 Feb 2020 09:24:26 +0100, Thomas Lahn wrote:
>>>John G Harris wrote:
>>>> On Mon, 24 Feb 2020 12:23:05 +0100, Thomas 'PointedEars' Lahn
>>>> <PointedEars@web.de> wrote:
>>>>>Andrew Poulos wrote:
>>>>>> On 24/02/2020 12:10 pm, Andrew Poulos wrote:
>>>>>>> I have an array of 50+ arrays each containing 300+ objects as
>>>>>>> elements.
>>>>>
>>>>>Technically it is not actually containing the objects, but just the
>>>>>references to them.  You can use that to your advantage (see below).
>>>>   <snip>
>>>> 
>>>> Please note that Thomas is talking here about his favourite
>>>> implementation of ECMAScript.
>>>
>>>Nonsense.  John G Harris still does not get it, and he is just trolling.
>> 
>> Disagreeing with Thomas is not trolling, […]
>
>But at least constantly talking about someone in the third person as if they 
>would not be reading it, is.

A says he does not read B's articles.
B assumes his article will not be read by A so writes "A" instead of
"you".
A complains that B hasn't written "you".

There's something illogical there.


  <snip meaningless abuse>


>>> He does not even know what my favorite ECMAScript implementation is.
>> 
>> Yes we do. […]

Incidentally, the square brackets in that quote line were written by
me, as everyone can see says Thomas.

>Who appointed you Speaker of the Newsgroup, and when did it happen?

You, and by that I refer to Thomas Lahn, don't seem to know the
difference between "we" and "we all".

  John

[toc] | [prev] | [standalone]


Back to top | Article view | comp.lang.javascript


csiph-web