Giter Club home page Giter Club logo

Comments (9)

Pointy avatar Pointy commented on August 29, 2024

No, I assure you that that is not what users really want. You know what types your properties contain; doT doesn't. What if I had two numbers and I wanted to add them? Why would that be a less important use case?

from dot.

bwoebi avatar bwoebi commented on August 29, 2024

@Pointy because that's definitely not what you expect from something which clearly should output. {{=var}} should just output what's in var. It's documented as an output operation, then it should just output too, not do any additions.

from dot.

Pointy avatar Pointy commented on August 29, 2024

@bwoebi I apologize for not expressing myself more clearly; also, I think I better understand what you're asking for now. However, I'm a little confused. If it.number is a number, and it.string is a string, then

out = (it.number)+(it.string);

will result in a string concatenation operation, and NaN cannot be generated by that. (Maybe I still don't understand what the failure scenario is.)

from dot.

bwoebi avatar bwoebi commented on August 29, 2024

@Pointy Hmm, I think I've done something wrong in the original bug report. The failure is definitely present when both operands are numeric. Then they definitely add up, which my quick fix above fixes.

from dot.

Pointy avatar Pointy commented on August 29, 2024

Right, OK now that I understand, and I agree that I'd be pretty surprised by that (though I confess it's never happened to me, and I've got a lot of templates). I wonder if a simpler change that involved simply making sure that the out variable is initialized to an empty string would fix it?

from dot.

bwoebi avatar bwoebi commented on August 29, 2024

@Pointy Not really. The operands on the right are evaluated first before it's concatenated to the left...

from dot.

Pointy avatar Pointy commented on August 29, 2024

@bwoebi yes I've been playing with it and I see what you mean; any time that numbers are involved things can get weird.

from dot.

olado avatar olado commented on August 29, 2024

Oh yes, I see this can happen if numbers are somewhere in the middle of the template.
I made changes in the dev branch for this, please take a look and try it out.
I'll merge the changes into master after a couple of days if all looks good.

from dot.

olado avatar olado commented on August 29, 2024

Addressed in version 1.0.3, closing

from dot.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.