Javascript '的目的是什么;编号()';在indexedDB get()方法中
根据下面链接的文档,Javascript '的目的是什么;编号()';在indexedDB get()方法中,javascript,indexeddb,Javascript,Indexeddb,根据下面链接的文档,get()只有一个参数:key。在描述中: 标识要检索的记录的键。这也可能是一个问题 IDBKeyRange在这种情况下,函数检索第一个现有的 值在该范围内 在下面的示例代码中,使用get(Number(“1”))将查找记录。仅使用get(“1”),结果为空。(主键/唯一键为“num”,是自动递增键。) 我一直无法在或通过搜索找到答案 数字有什么作用?数字构造函数作为函数调用时(即不使用new)将参数转换为数字并返回该值。因此,Number(“1”)返回数字1 明确地编码数字
get()
只有一个参数:key
。在描述中:
标识要检索的记录的键。这也可能是一个问题
IDBKeyRange在这种情况下,函数检索第一个现有的
值在该范围内
在下面的示例代码中,使用get(Number(“1”))
将查找记录。仅使用get(“1”)
,结果为空。(主键/唯一键为“num”,是自动递增键。)
我一直无法在或通过搜索找到答案
数字有什么作用?数字构造函数作为函数调用时(即不使用
new
)将参数转换为数字并返回该值。因此,Number(“1”)
返回数字1
明确地编码数字(“1”)
是没有意义的;您只需使用1
。如果您知道可能会得到一个字符串值,这将非常有用。在您的例子中,API正在对您的键执行精确的比较,如果真正的键是一个数字,那么它将永远不会==
任何字符串
一元+
运算符基本上做相同的事情,因此+“1”
也是1
。有些人喜欢显式地调用Number()
,因为它更显式一些
parseFloat()
函数还将把字符串转换为数字,但与number()
构造函数或一元+
不同,parseFloat()
将允许输入字符串末尾的非数字内容:
console.log(parseFloat("123hello world")); // 123
console.log(+"123hello world"); // NaN
看着调试器的输出,我一定很困惑。因此,
store.get(1)
是最简单的用法吗?@David wellstore.get(1)
是最简单的方法,如果您想要使用键1
的记录,是的。
console.log(parseFloat("123hello world")); // 123
console.log(+"123hello world"); // NaN