xsl-list
[Top] [All Lists]

Re: comparing a string to a number?

2003-09-16 15:55:18
Hey Matt,

At 06:18 PM 9/16/2003, you wrote:
<xsl:if test="/Output/response/Field &lt; '20'">

This is confusing to me for a few reasons.

1) The '20' is in quotes

Yes: it does no harm, but it doesn't help either: the string will be coerced into a number. (It'll cost you a micro-millisecond unless your processor compiles it away.)

2) the value of the Field node is most often a number, but on some occasions it's a letter/number pair, like 1A or 1B.

Can this check ever work?

It will work in the sense that it won't throw an error, yes. Whether it "works" in the sense of giving you the results you want, depends on what you want.

  Would 1A ever be "less" than '20'?

No, and it won't ever be more, either. Converted to a number it becomes NaN, which when compared as a number to 20 always results in false. (Someone please jump in if I'm wrong: these rules are defined in IEEE 754.)

Good question.

Cheers,
Wendell


======================================================================
Wendell Piez                            
mailto:wapiez(_at_)mulberrytech(_dot_)com
Mulberry Technologies, Inc.                http://www.mulberrytech.com
17 West Jefferson Street                    Direct Phone: 301/315-9635
Suite 207                                          Phone: 301/315-9631
Rockville, MD  20850                                 Fax: 301/315-8285
----------------------------------------------------------------------
  Mulberry Technologies: A Consultancy Specializing in SGML and XML
======================================================================


XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



<Prev in Thread] Current Thread [Next in Thread>