天天看点

JavaScript Json Create、Select、Delete、Update

<!DOCTYPE html>

<html>
<head>
    <title>JavaScript Json Create、Select、Delete、Update</title>
    <script src="js/jquery-1.8.3.min.js"></script>
    <script type="text/javascript">
        var json = "[]";
        var arry_item = eval('(' + json + ')');

        ///#BEGIN CREATE===================================================#
        //arry_item.push(arry_model):数组最后加一条记录
        //arry_item.unshift(arry_model):数组最前面加一条记录
        //document.writeln("") //支持IE8+

        //Create 1 支持IE8+:
        //var arry_model = { 'tabid': '1000', 'tabname': '选项卡1', 'src': '/admin/index.html' };
        //arry_item.push(arry_model);

        //Create 2 支持IE8+:
        arry_item.push({ 'tabid': '1000', 'tabname': '选项卡0', 'src': '0.html' });
        arry_item.push({ 'tabid': '1001', 'tabname': '选项卡1', 'src': '1.html' });
        arry_item.push({ 'tabid': '1002', 'tabname': '选项卡2', 'src': '2.html' });
        arry_item.push({ 'tabid': '1003', 'tabname': '选项卡3', 'src': '3.html' });

        ///#END CREATE===================================================#



        ///#BEGIN SELECT===================================================#
        //var arry_item_grep = $.grep(arry_item, function (item) { return item.tabid == 1000 && item.tabname == "选项卡0"; });//筛选tabid==100&&tabname==选项卡0的数组
        //Json对象转字符串 str = JSON.stringify(arry_item)
        //Json字符串转Json对象 arr = JSON.parse(Json)
        //document.writeln(JSON.stringify(arry_item) + "<br/>");

        //Select 1 支持IE8+:
        //for (var i = 0; i < arry_item.length; i++) {
        //    document.writeln("tabid:" + arry_item[i].tabid + " | tablename:" + arry_item[i].tabname + " | src:" + arry_item[i].src + "<br/>");
        //}

        //Select 2 支持IE8+:(需引用jQuery)
        //$.each(arry_item, function (i, item) {
        //    document.writeln("tabid:" + item.tabid + " | tablename:" + item.tabname + " | src:" + item.src + "<br/>");
        //});

        //Select 3 支持IE9+:
        //arry_item.forEach(function (v, i, item) {
        //    document.writeln("tabid:" + item[i].tabid + " | tablename:" + item[i].tabname + " | src:" + item[i].src + "<br/>");
        //});

        //Select 4 支持IE9+:
        //arry_item.map(function (v, i, item) {
        //    document.writeln("tabid:" + item[i].tabid + " | tablename:" + item[i].tabname + " | src:" + item[i].src + "<br/>");
        //});

        ///#END SELECT===================================================#



        ///#BEGIN DELETE===================================================#
        //arry_item.pop();//删除最后一项 支持IE5+
        //arry_item.shift();//删除第一项 支持IE5+
        //arry_item.splice(0, 1);//删除指定对象(开始位置,删除个数) 支持IE5+

        //DELETE 1 支持IE5+:删除tabid == 1000 || tabid == 1002 的数组
        for (var i = 0; i < arry_item.length; i++) {
            if (arry_item[i].tabid == 1000 || arry_item[i].tabid == 1002) {
                arry_item.splice(i, 1);
            }
        }

        //DELETE 2 支持IE5+:清空数组
        //arry_item.splice(0, arry_item.length);

        ///#END DELETE===================================================#



        ///#BEGIN UPDATE===================================================#
        //arry_item.splice(1, 0, e, f);//替换不删除(开始位置,删除个数,插入对象) 支持IE5+
        //arry_item.splice(0, 1, e, f);//替换并删除(开始位置,删除个数,插入对象) 支持IE5+
        ///#END UPDATE===================================================#



        document.writeln(JSON.stringify(arry_item) + "<br/>");
        for (var i = 0; i < arry_item.length; i++) {
            document.writeln("tabid:" + arry_item[i].tabid + " | tablename:" + arry_item[i].tabname + " | src:" + arry_item[i].src + "<br/>");
        }
    </script>
</head>
<body>
    <form id="form1" runat="server">
        <div>
        </div>
    </form>
</body>
</html>