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


Groups > comp.lang.javascript > #27973

Re: Style: new String( "abc" )

From Thomas 'PointedEars' Lahn <PointedEars@web.de>
Newsgroups comp.lang.javascript
Subject Re: Style: new String( "abc" )
Date 2015-06-03 07:57 +0200
Organization PointedEars Software (PES)
Message-ID <1962100.Vu9JShqaFp@PointedEars.de> (permalink)
References (1 earlier) <mkl000$bif$1@news.albasani.net> <2130550.8QLrkFYiEJ@PointedEars.de> <mkl8h8$17b$1@news.albasani.net> <6829198.rnUjZSozy1@PointedEars.de> <mklvde$db3$1@news.albasani.net>

Show all headers | View raw


Andreas Bergmaier wrote:

> Thomas 'PointedEars' Lahn schrieb:
>> Andreas Bergmaier wrote:
>>> This should get you started:
>>> http://stackoverflow.com/questions/17256182/what-is-the-difference-between-string-literals-and-string-objects-in-javascript
>>
>> I do not see anything there that substantiates your claim.  Instead, I
>> see an answer, <http://stackoverflow.com/a/17256419/855543>, that clearly
>> contradicts your claim when it says:
>>
>> | I'll exemplify with V8 but I assume other engines use similar
>> | approaches.
>> |
>> | A string primitive is parsed to a v8::String object. Hence, methods can
>> | be
>>      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^            ^^^^^^
>> | invoked directly on it as mentioned by jfriend00.
> 
> I'd assume you've read the next two sentences as well?

I have, but they are irrelevant to your claim.

> [red herring]

> | has to unbox this v8::StringObject's v8::String before executing the
> | method, hence it is slower.

Your logic is flawed.  What you quoted does not change, it rather 
*emphasizes*, the fact that string primitives *are* parsed into objects by 
V8, which you claimed they would not be:

>>>>>> the primitve "abc" was implicitly converted into an object /three 
>>>>>> times/.
>>>>> In the old times, maybe.  Current compilers don't convert anything to 
>>>>> an object any more here, […]

  – Andreas Bergmaier in <news:mkl000$bif$1@news.albasani.net>

V8 is what can be called a “current script engine”.  So it contains a 
“current compiler”.  But that compiler *does* parse string primitives into 
(v8::String) objects.

Therefore, _not_ *all* “current compilers do not convert anything to an 
object any more there.”

Your claim has been refuted by your sources.

  “Learn reason above all.  Learn clear thought: learn to know
   what is from what seems to be, and what you wish to be.”

    ─Surak

-- 
PointedEars
FAQ: <http://PointedEars.de/faq> | SVN: <http://PointedEars.de/wsvn/>
Twitter: @PointedEars2 | ES Matrix: <http://PointedEars.de/es-matrix>
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


Thread

Re: Style: new String( "abc" ) Andreas Bergmaier <andber93@web.de> - 2015-06-02 21:25 +0200
  Re: Style: new String( "abc" ) Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-06-02 22:27 +0200
    Re: Style: new String( "abc" ) Andreas Bergmaier <andber93@web.de> - 2015-06-02 23:51 +0200
      Re: Style: new String( "abc" ) Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-06-03 01:17 +0200
        Re: Style: new String( "abc" ) Andreas Bergmaier <andber93@web.de> - 2015-06-03 06:22 +0200
          Re: Style: new String( "abc" ) Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-06-03 07:57 +0200
            Re: Style: new String( "abc" ) Andreas Bergmaier <andber93@web.de> - 2015-06-03 18:36 +0200
          Re: Style: new String( "abc" ) John Harris <niam@jghnorth.org.uk.invalid> - 2015-06-03 15:38 +0100

csiph-web