Javascript Redis如何存储数字而不是字符串
我试图将一个数字作为值存储在Redis key中。例如,我想存储一个值4。我不希望它被存储为“4”。为什么我需要这个?因为当我检索回这个值时,我将对它进行一些位运算。如果它存储为“4”(而不是4),那么在Redis中实际存储的值似乎是52(即…00110100而不是00000100) 你可能会想,为什么我不使用Redis bitops。原因是我必须存储许多位的数组。我不想在循环中做redis bitops。我只想在本地创建一个等效数组,并通过调用set命令上传它 在Javascript中,我尝试Javascript Redis如何存储数字而不是字符串,javascript,redis,Javascript,Redis,我试图将一个数字作为值存储在Redis key中。例如,我想存储一个值4。我不希望它被存储为“4”。为什么我需要这个?因为当我检索回这个值时,我将对它进行一些位运算。如果它存储为“4”(而不是4),那么在Redis中实际存储的值似乎是52(即…00110100而不是00000100) 你可能会想,为什么我不使用Redis bitops。原因是我必须存储许多位的数组。我不想在循环中做redis bitops。我只想在本地创建一个等效数组,并通过调用set命令上传它 在Javascript中,我尝试
redis.set(key, 4)
很明显,它不起作用。然后我试着
redis.set(key, "\x04")
这很有效。但是如何通过转换成这种格式来存储字节数组呢?这里缺少什么?在内部,如果一个数据类型的所有值都是数字,那么数据将以数字表示形式存储。否则,数据将存储为字符串。据我所知,您不能强制Redis对单个数据点使用特定的表示方法,而且无论如何,您将始终以字符串的形式获取值。您需要自己解析该值,并将其转换为整数、浮点等