Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.javascript > #39450
| 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
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