功能分类: Data Applab JavaScript 少儿编程
获取 Applab 里键值对存储中指定 key
对应的值,并指定 callback
回调函数供读取完成后异步调用。
Applab 里的远程 key/value 键值对 数据存储为 APP 应用增加了持久数据存储的功能,可以让你编写的程序成为一个真正的 APP 应用 - 像你平时使用的 APP 一样。我们使用的很多应用程序都是通过 “云端” 数据驱动的。通过使用这里的方法,你也可以开发一个 “云端” 数据驱动的应用。如果不使用远程数据存储,比如在 APP 里使用类似 var highscore = 10;
的变量来存储得分;但这时每次 APP 重新加载时,highscore
都会被重新创建并赋值为 10 。而如果使用云端数据存储,每次 APP 被不同的人不同的设备重新加载时,APP 都可以通过使用方法
getKeyValue()
以及 setKeyValue()
从云端获取数据或重新更新高云端。在使用 key/value 键值对存储数据时,key
键 的使用类似变量名(如:highscore
),而 value
值 则类似返回变量值(如:10)。使用 getKeyValue()
方法时,当键值成功返回时,方法指定的回调函数会立刻对返回值异步进行处理。你也可以使用 setKeyValue() 方法来设置键值对中指定键的值。
在一个 APP 应用里只能访问 APP 自己创建的键值对或表数据。要查看 APP 里的键值对或表数据,在 Applab 页面点击并打开 数据
页面,在页面里会显示 APP 相关的所有键值对或表数据信息,点击键值对或数据表即可查看或修改表数据。
// 存储键值对,读取键值对,并输出控制台日志
setKeyValue("highScore", 100 , function () {
console.log("highScore stored");
getKeyValue("highScore", function (value) {
console.log("high score is: " + value);
});
});
示例代码:保存更大值 生成随机数并与当前键值对比较,如果更大则更新到键值对,并在控制台输出日志。
// 生成随机数并与当前键值对比较,如果更大则更新到键值对,并在控制台输出日志。
var random = randomNumber(1, 100);
getKeyValue("biggestNum", function (value) {
console.log("random: " + random + " biggestNumber: " + value);
if ((value === undefined) || (random > value)) {
setKeyValue("biggestNum", random, function () {
console.log(random + " is bigger than " + value + ". Updated biggestNumber");
});
}
});
getKeyValue(key, function(value){
// 在这里编写回调函数代码
// 参数 'value' 里包含获取到的值
});
名称 | 类型 | 必需 | 参数描述 |
---|---|---|---|
key | string | Yes | 获取数据所对应的键。 |
callback | function | yes | getKeyValue 调用完成后被异步调用执行的函数。一个包含数据结果的参数将被传递给回调函数。 |
没有返回值。但在 getKeyValue()
成功执行并获取数据后,获取到的数据会作为参数传递给 callback 回调函数,同时异步调用并执行回调函数。
key
不存在,相应的 value
将为 undefined
值。getKeyValue()
有一个异步 callback 回调函数,是因为它需要访问远程数据存储,并不会立刻获得返回结果。通过使用异步回调函数,主代码无需等待。请求结果返回后在这个回调函数里异步处理。getKeyValue()
调用的函数。getKeyValue()
,放在循环里执行。因为循环里不会等异步调用结束才继续执行。