我想将lua号保存到字符串中并正确处理//First remove the previous set attribute
$('select').click(function() {
$(this).find('option:selected').removeAttr('selected');
});
//Set the newly selected option's attribute to selected
$('select').on('change', function() {
$("option:selected").attr('selected','selected');
});
大小写。
检测任何NaN很容易,NaN
。
但是,我发现要检测的唯一方法是使用x ~= x
还是NaN
。有更好的方法吗?
答案 0 :(得分:1)
您可以使用实际的tostring(x) == 'nan'
调用:tostring
或tostring(x) == tostring(0/0)
来代替比较,而不是不可移植的tostring(x) == tostring(-(0/0))
。如果您需要进行多个比较,则可以保存tostring
的结果并重复使用。
答案 1 :(得分:1)
存在两个以上的NaN(实际上,根据IEEE-754,有2^52-1
个NaN)。
他们的tostring
版表示形式取决于平台。
这是一个如何获取三个不同的NaN的示例(我使用的是Visual Studio内置的Lua 5.3):
n = string.unpack(">d", string.pack(">d", 0/0):sub(1, -2).."@")
print(0/0, -(0/0), n) --> -1.#IND 1.#QNAN -1.#QNAN
因此,不区分NaN的不同变体会更正确。