var i = ['5000','35000'];
alert((i[0] < i[1])?'well duh!':'fuzzy math?');
alert((Number(i[0]) < Number(i[1]))?'well duh!':'fuzzy math?');
在这里发生了什么?在第一个警报中,“5000”文本字符串被评估为不小于“35000”。我以为Javascript在比较字符串的数字时使用Number(),但显然并非如此。只是好奇Javascript默认如何处理数字字符串的数值比较。
"5"
比"3"
大。这是一种纯字符比较。 - SLaks