javascript - 以编程方式从构造函数中检索属性名称

标签 javascript local-storage

我正在尝试学习 javascript,并且正在尝试找出项目的本地存储。但首先我认为我需要通过我的团队构造函数以编程方式构建 key 。

 var Team = function(team, manager, cell, add1, add2, city, st, zip, sponsor) {
  this.team = team;
  this.manager = manager;
  this.cell = cell;
  this.add1 = add1;
  this.add2 = add2;
  this.city = city;
  this.st = st;
  this.zip = zip;
  this.sponsor = sponsor;
  };

这是我构建的表单,现在我想构建本地存储。这是我失败的尝试:

 function saveTeam() {
 for (var i = 0; i < Team.length; i++) {
 localStorage["league." + i "." + javascriptNameOfProperty ] = $('#'+ javascriptNameOfPropertyName + ').val() };

或者类似的东西。我试过“property”、“key”和其他我试过的不适用于 javascriptNameofProperty。当然,一旦我想通了,我就必须弄清楚本地存储。

最佳答案

在这种情况下,您可以使用对象字面量而不是构造函数(我在您发布的代码中看不到构造函数的任何原因,您应该使用 new 实例化对象,你不是)。考虑使用它(假设您传递给 Team 的所有变量都已定义):

var team = {
    team : team,
    manager : manager,
    cell : cell,
    add1 : add1,
    add2 : add2,
    city : city,
    st : st,
    zip : zip,
    sponsor : sponsor
}

这可以用下面的代码迭代:

for(var key in team) {
    localStorage["league." + key] = team[key];
}

我认为这并没有完全按照您的原始代码尝试执行的操作,但不清楚您是否有多个团队、它们是如何创建的以及它们是如何使用的。我希望这会有所帮助。

关于javascript - 以编程方式从构造函数中检索属性名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11747683/

相关文章:

仅当光标聚焦在文本框中时才使用 JavaScript

javascript - 正则表达式 - 验证结束标记 - 模板引擎

javascript - 每当发生错误时 NodeJs 应用程序 "hanging"或 "freezing"

html - firefox的localstorage目录是哪个物理目录?

javascript - 将元素动态推送到数组jquery

javascript - as3 中的鼠标滚轮事件滚动 flash 和 html。有没有办法停止javascript?

java - javascript 中的 JSON 字符编码与 java 不同

javascript - window.localStorage() 设置语言首选项

javascript - 本地存储不保存复选框未选中的阶段

image - HTML5 上传前调整图片大小