2012-03-19 44 views

回答

2

像马丁说的。例如,如果上下文项是xs:gYear的一个实例,那么number(。)将会失败。例如,如果数组()但数字(字符串(。))会成功;相反,如果上下文项是布尔值,则数字(。)将将true转换为1,将false转换为0,而number(string(。))将转换为NaN。但这些边缘情况对于您的应用程序来说很重要。

+0

是数字(字符串(。)减少到数字(。)吗? – 2012-03-20 15:00:43

+0

我认为我包括上面的情况。 – 2012-03-22 13:46:55

2

对于第一个我很确定它可以减少到string(.)。对于第三个我不认为你可以减少到string(.)作为例如上下文节点具有字符作为其字符串内容(例如<foo>a</foo>)做number(string(.))给你的特殊号码值“不是一个数字”,如果你做string()在那又一次你得到(http://www.w3.org/TR/xpath/#section-Number-Functions,http://www.w3.org/TR/xpath/#section-String-Functions)字符串“NaN”。我不确定第二个是否可缩减,也许你可以用我提供的链接查看边缘案例的细节。

+0

是数字(字符串(。)减少到数字(。)吗? – 2012-03-20 15:00:12

相关问题