Javascript For..语法问题
Javascript For...In syntax issue?
下面代码中的搜索函数不起作用,我认为它与For。。。循环中,但我是JS的新手,不确定为什么:
var friends = {
bill: {
firstName: "bill",
lastName: "smith",
number: 1,
address: ["1"]
},
steve: {
firstName: "steve",
lastName: "smith",
number: 2,
address: ["2"]
}
};
var list = function(list) {
for(var item in list) {
console.log(item);
}
};
var search = function(name) {
for(var friend in friends) {
if(friend.firstName === name) {
console.log(friend);
return friend;
}
}
};
search("steve");
for in
循环迭代键,而不是值。
friend
是一个字符串,包含每个属性的名称
要获取该值,请使用friends[friend]
。
for的优秀文档。。在mdn上可以找到in循环。其中variable
在每次迭代中被分配给"一个不同的属性名称"。
你可能也不需要循环浏览每个朋友。如果您将搜索功能更改为在对象上使用hasOwnProperty
:
var search = function(name) {
if(friends.hasOwnProperty(name)){
return friends[name];
}
};
这将检查对象friends
中是否有name
的属性并返回它。下面是一个快速的示例。
相关文章:
- Onclick不会启动..可能存在javascript语法问题
- 基本对象/原型语法问题
- JQuery代码语法问题?(“不允许内联控制结构”)
- Javascript函数变量传递语法问题
- 这个javascript语法有什么问题
- 未捕获的语法错误:意外的令牌:跨域问题
- 我的Javascript语法有什么问题
- Jison 语法问题,生成解析器出现奇怪错误
- 我在使用JavaScript语法时遇到问题
- Jquery JSON 请求的语法错误问题
- 高图表和表达式语言问题 - 标记“{”上出现语法错误
- 以下语法有什么问题:它不起作用
- findOne() 不起作用 - 我的语法有问题
- 使用 jssor 滑块的“空元素的 XML 样式关闭语法”问题
- 代码只是没有执行,可能有语法问题,或者我可能完全错了
- JS语法问题还是使用三个.js三个.循环中的图像加载器
- Javascript语法函数问题
- 反应 - 语法问题
- 语法问题.淘汰赛.用于过滤
- Undercore模板问题-未捕获语法错误:意外的标记<