HTML5本地储存实现--简易数据库

本文介绍如何利用HTML5的本地存储功能创建一个简单的键值对数据库。通过JavaScript将input输入的内容转化为JS对象,再用JSON.stringify()转换为字符串存储。当需要读取数据时,使用JSON.parse()将字符串还原为对象。这种方法允许在一个键下存储多个内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

虽说是简易数据库,但其实只有键值与键值对应的内容,通过将input框中的所有内容获取到JS对象中,并通过打包成JSON字符串保存在本地数据库中,实现一个键值保存多个内容

因为本地储存中,只能保存字符串不能保存变量,所以需要转化成字符串

效果预览:
这里写图片描述

关键知识点:

JSON.stringify() 方法用于将 JavaScript 值转换为 JSON 字符串。

JSON.parse() 方法用于将一个 JSON 字符串转换为对象。

代码部分:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        <h1>使用web Srotage 来做简易数据库实例</h1>
        <table>
            <tr><td>姓名:</td><td><input type="text" id="name"/></td></tr>
            <tr><td>EMAIL:</td><td><input type="text" id="email"/></td></tr>
            <tr><td>电话号码:</td><td><input type="text" id="tel"/></td></tr>
            <tr><td>备注:</td><td><input type="text" id="memo"/></td></tr>
            <tr>
                <td></td>
                <td><input type="button" value="保存" onclick="saveStorage();"/></td>
            </tr>
        </table>
        <hr />
        <p>
            检索:
            <input type="text" id="find" />
            <input type="button" value="检索" onclick="findStorage('msg')"/>
        </p>
        <p id="msg"></p>
        <script type="text/javascript">

            function saveStorage() {
                //创建一个对象,并将所有input的内容放到对象各属性中
                var data = new Object;
                data.name = document.getElementById('name').value;
                data.email = document.getElementById('email').value;
                data.tel = document.getElementById('tel').value;
                data.memo = document.getElementById('memo').value;
                //将对象中所有属性和值转换成JSON字符串格式
                var str = JSON.stringify(data);
                //以data对象中的name属性作为键值,打包后JSON数据作为内容保存到本地数据库中
                localStorage.setItem(data.name,str);
                //保存成功后显示提示
                console.log("数据已保存");
            }

            function findStorage(id) {
                //获取input框中输入的值
                var find = document.getElementById('find').value;
                //将获取到的值,通过键值查找键值下的内容
                var str = localStorage.getItem(find);
                //将查询到的内容从JSON字符串转换成JS对象
                var data = JSON.parse(str);
                //将对象中所有值,依次获取出来
                var result = "姓名:" + data.name + '<br />';
                result += "EMAIL:" + data.email + '<br />'; 
                result += "电话号码:" + data.tel + '<br />';
                result += "备注:" + data.memo + '<br />';
                var target = document.getElementById(id);
                target.innerHTML = result;
            }

        </script>
    </body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值