gpt4 book ai didi

javascript - 在 JavaScript 中如何访问另一个对象的数据?

转载 作者:行者123 更新时间:2023-11-30 10:56:37 26 4
gpt4 key购买 nike

我想访问 jobs.scan 对象中的 availJobs 但我不能。它没有在 jobs.attack 中定义。如何访问其他对象中的 jobs.scan 部分?

var jobs = new Array();

jobs.scan = function() {
var availJobs = new Array();
var jobContents = dom.get("app8743457343_content");
var boldthreads = jobContents.getElementsByTagName('b');
for(var i = 0; i < boldthreads.length; i++) {
if(boldthreads[i].style.color == 'silver') {
availJobs.push(boldthreads[i].textContent);
}
}
return availJobs;
}

jobs.attack = function() {
jobs.scan();
alert(jobs.availJobs[0]);
}

jobs.attack();
jobs.attack 中的

availJobs[0] 不起作用。它是 undefined。如何将 availJobs 设置为公共(public)的并且可以在其他对象中访问?

感谢大家的帮助!!这是我输入的代码:

var jobs = {
availJobs: new Array(),
scan: function() {
var jobContents = dom.get("app8743457343_content");
var boldthreads = jobContents.getElementsByTagName('b');
for(var i = 0; i < boldthreads.length; i++) {
if(boldthreads[i].style.color == 'silver') {
this.availJobs.push(boldthreads[i].textContent);
}
}
},
attack: function() {
this.scan();
alert(this.availJobs[0]);
},
};

jobs.attack();

这段代码绝对更优雅,你不觉得吗?我用过它,它成功了!

最佳答案

{} 用于初始化一个对象,Array 用于初始化一个数组。

var jobs = {
availJobs : new Array()
}

jobs.scan = function() {
var jobContents = dom.get("app8743457343_content");
var boldthreads = jobContents.getElementsByTagName('b');
for(var i = 0; i < boldthreads.length; i++) {
if(boldthreads[i].style.color == 'silver') {
availJobs.push(boldthreads[i].textContent);
}
}
return availJobs;
}

{} 声明中,如果用逗号 , 分隔它们,则可以向对象添加多个成员:

var jobs = {
availJobs : new Array(),
anotherMember : null,
anotherArray : new Array(),
aFunction = function() {...}
}

关于javascript - 在 JavaScript 中如何访问另一个对象的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/662217/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com