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


Groups > comp.lang.javascript > #39450

Re: Bug in javascript found

Path csiph.com!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From Ben Bacarisse <ben.usenet@bsb.me.uk>
Newsgroups comp.lang.javascript
Subject Re: Bug in javascript found
Date Wed, 10 Feb 2021 11:20:07 +0000
Organization A noiseless patient Spider
Lines 59
Message-ID <87r1logoew.fsf@bsb.me.uk> (permalink)
References <ad443096-b466-4cdc-a0f8-edc0d815fa5en@googlegroups.com> <7ad3dfb3-90b3-4fce-b537-55511a64cea8n@googlegroups.com> <6c7176b7-13fe-4381-8083-ccc58fc4fcb6n@googlegroups.com> <878s7wis65.fsf@bsb.me.uk> <aae38420-1ff8-4d3e-adc4-12629019351an@googlegroups.com>
Mime-Version 1.0
Content-Type text/plain; charset=iso-8859-1
Content-Transfer-Encoding 8bit
Injection-Info reader02.eternal-september.org; posting-host="1cf95790cca243eb5e1e6b17078f9ce0"; logging-data="29100"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/2Qq2A6QgO4a3vPJJ0VY0OXzaEl2mbFI8="
Cancel-Lock sha1:x8EClXsChl5L5n5g23FaVesaxe8= sha1:T7HCBstS3Y9VaxTISWxtgyrPoWk=
X-BSB-Auth 1.1eb71c7d7765c5d267c5.20210210112007GMT.87r1logoew.fsf@bsb.me.uk
Xref csiph.com comp.lang.javascript:39450

Show key headers only | View raw


Jonas Thörnvall <jonas.thornvall@gmail.com> writes:

> onsdag 10 februari 2021 kl. 03:16:10 UTC+1 skrev Ben Bacarisse:
>> Jonas Thörnvall <jonas.t...@gmail.com> writes: 
>> 
>> > tisdag 9 februari 2021 kl. 22:03:22 UTC+1 skrev Jonas Thörnvall: 
>> >> tisdag 9 februari 2021 kl. 21:42:46 UTC+1 skrev Jonas Thörnvall: 
>> >> > The input alert have not same value as the calcSTR alert. 
>> >> > And that is also why it not goes into the if clause. 
>> >> > 
>> >> > The "Input"+calcSTR is +7 
>> >> > but the "calcSTR"+calcSTR is +14-7 
>> >> > 
>> >> > A string can't just change value so there must be a bug in at least Chrome implementation of javascript. 
>> >> > 
>> >> > function evalSecondary(calcSTR){ 
>> >> > alert("Input"+calcSTR); 
>> >> > for(m=0;m<calcSTR.length;m++){ 
>> >> > tempChar=calcSTR.charCodeAt(m); 
>> >> > //Plus or Minus 
>> >> > if((tempChar==43|| tempChar==45) && m!=0){ 
>> >> > alert("tempChar "+tempChar+ " M="+m+" calcSTR"+calcSTR); 
>> >> > operand=calcSTR.charAt(m); 
>> >> > getSecondaryOps(calcSTR); 
>> >> > calcSubSecondary(calcSTR); 
>> >> > } 
>> >> > } 
>> >> > } 
>> >> Well you see the code creating the alerts. 
>> >> https://jonasth.github.io/Mathparse/INDEX.HTML 
>> >> It is an impossibility frankly. 
>> > I simply could not understand why the recursion never ended, but then 
>> > again if a variable can change value "within same function" while not 
>> > assigned between two alerts then something definitely broken.
>> It is not going to turn out to be Chrome that's broken. Your code is a 
>> mess, but the biggest problem is that you are still using global 
>> variables. These are always a bad idea, but they are particularly bad 
>> in recursive code. 
>> 
> So you say it is correct for a variable to change value within a
> function without having an assignment between the changing points, i
> kind of doubt that.

Global variables can be assigned from anywhere.  The chances are your
code is changing the variable but you don't know where that is
happening.

> But i agree there is some sorcery going into recursive coding, global
> values that are in a function no longer present after recursion ended,
> my head quite spinning of it.

That feeling is common (every student I've ever taught programming to
has at some point thought that magic was involved) but it does not help.
Your code is not doing what you think it is doing and the more you focus
on other factors like supposed bugs in Chrome or sorcery the longer it
will take you to understand what you code /is/ really doing.

-- 
Ben.

Back to comp.lang.javascript | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Bug in javascript found Jonas Thörnvall <jonas.thornvall@gmail.com> - 2021-02-09 12:42 -0800
  Re: Bug in javascript found Jonas Thörnvall <jonas.thornvall@gmail.com> - 2021-02-09 12:43 -0800
  Re: Bug in javascript found Ben Bacarisse <ben.usenet@bsb.me.uk> - 2021-02-09 21:01 +0000
  Re: Bug in javascript found Jonas Thörnvall <jonas.thornvall@gmail.com> - 2021-02-09 13:03 -0800
    Re: Bug in javascript found Jonas Thörnvall <jonas.thornvall@gmail.com> - 2021-02-09 13:14 -0800
      Re: Bug in javascript found Ben Bacarisse <ben.usenet@bsb.me.uk> - 2021-02-10 02:16 +0000
        Re: Bug in javascript found Jonas Thörnvall <jonas.thornvall@gmail.com> - 2021-02-10 01:11 -0800
          Re: Bug in javascript found Ben Bacarisse <ben.usenet@bsb.me.uk> - 2021-02-10 11:20 +0000
  Re: Bug in javascript found Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2021-02-14 00:52 +0100
    Re: Bug in javascript found Jonas Thörnvall <jonas.thornvall@gmail.com> - 2021-02-13 16:32 -0800
    Re: Bug in javascript found John G Harris <niam@jghnorth.org.uk.invalid> - 2021-02-14 10:22 +0000
  Re: Bug in javascript found Silvio <silvio@internet.com> - 2021-02-14 10:38 +0100

csiph-web