为了账号安全,请及时绑定邮箱和手机立即绑定

关于数组push对象的问题

关于数组push对象的问题

UYOU 2019-02-15 19:34:54
html代码:<form id="div">    姓名:<input type="text" name="name" value=""><br/>    年龄:<input type="text" name='age' value=""><br/>    <button id="save">一键缓存</button></form>js代码:$(function () {    $('#save').click(function () {        var history = [];        //先清除原来的缓存        window.localStorage.formHistory = '';        for(var i = 0; i < $('#div input').length; i++){            if( $('#div input')[i].type == 'text'){                var prop = $('#div input')[i].name;                alert(prop);                history.push({ prop : $('#div input')[i].value});            }        }        window.localStorage.formHistory = JSON.stringify(history);    })})点击button后,我是想将input中的值存入localstorage中,但是在控制台中发现结果如下:[{"prop":"11"},{"prop":"22"}]我想存入的结果是如下:[{"name":"11"},{"age":"22"}]就是让程序能够自动获得每个input标签的name属性作为存入对象的属性,代码要怎么修改呢?为什么我这样写不行呢?先谢了!
查看完整描述

1 回答

?
慕盖茨4494581

TA贡献1850条经验 获得超11个赞

history.push({ [prop]: $('#div input')[i].value });

或者


var h = {};

h[prop] = $('#div input')[i].value;

history.push(h);


查看完整回答
反对 回复 2019-02-19
  • 1 回答
  • 0 关注
  • 1035 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信