javascript - JavaScript 循环中的访问范围
问题描述
我有下面的代码,并且一直在尝试并一直在阅读,但无法弄清楚如何遍历 params 数组/对象,并将键值对设置为“this”,以便我可以按照最后一行访问它们我下面的代码。
我相信这是因为范围,当它在 for 循环中时,'this' 不再引用我的函数,但是我怎样才能在那里获得范围呢?我发现您可以将它作为辅助参数添加到 foreach 循环,但我无法让 foreach 循环在关联数组上工作.....
稍后,我希望能够访问传递给函数 batman 的数组中的任何值,就像我的示例显示的打印 lname 的方式一样。
function batman(id,params){
this.id=id;
for(.....params.....){
// this.key=val;
}
}
x=new batman("my_id",{fname:"jason",lname:"bourne"});
console.log("id: "+x.id); // works fine
console.log("fname: "+x.fname); // would like to get this to work...
解决方案
你的意思是这样吗?您的问题似乎在于解析params
对象中的键/值对。运行代码片段以查看它的工作...
function batman(id,params){
this.id=id;
for(var key in params){
this[key]=params[key];
}
}
x=new batman("my_id",{fname:"jason",lname:"bourne"});
console.log("id: "+x.id); // works fine
console.log("fname: "+x.fname); // hey look! this works fine now...
推荐阅读
- r - 基于另一个变量的变量的汇总统计
- ssl-certificate - 在多个进程之间共享临时客户端证书存储
- html - React useState 钩子附加到输入类型号而不更新鼠标滚动时的值
- c# - C# WebClient 从站点获取 html 时收到 403
- javascript - 如何在 django 的输入标签中显示数据库中的值?
- java - Wildfly 中的自签名证书不起作用,但适用于 spring-boot
- docusignapi - QuickStart 应用程序出错 - 重定向 URI 未在 DocuSign 中正确注册
- react-native - 使用 npm 安装 react-navigation 会出错
- html - Outlook 预览功能通过 HTML 代码错误地显示符号
- python - FastAPI - 未填充 ENUM 类型模型