js中in的用法:使用“In”运算符遍历数组和对象
您可以在 javascript 中使用in运算符来遍历数组或对象。这使得查看对象的属性和方法等特别方便。它对于检查是否存在特定的哈希键或对象是否具有特定的属性或方法也很有用。最重要的是,您可以将其用作编写冗长的“if”语句的替代方法,在该语句中,您可以根据一系列替代方案反复检查变量。
使用 ‘In’ 遍历 Javascript 中的数组
以下代码使用in遍历数组。请注意,循环变量设置为每个数组元素的索引,而不是元素本身。
var fruits = ['apple', 'orange', 'banana'];
var text = '';
for(var i in fruits) {
text += i + ': ' + fruits[i] + 'n';
}
alert(text);
强烈推荐
海量程序代码,编程资源,无论你是小白还是大神研究借鉴别人优秀的源码产品学习成熟的专业技术强势助力帮你提高技巧与技能。在此处获取,给你一个全面升级的机会。只有你更值钱,才能更赚钱
如果你是初级程序员可以研究别人的代码提高技术,如果你喜欢搞网盟或者外包,可以让你快速建站,还等什么赶快关注吧,我们会持续输出相关资源
在 Javascript 中使用“In”查看哈希键值对
in运算符也适用于javascript 哈希(关联数组),允许您查看键值对。
例如:
var fruits = {
'apple': 'green',
'banana': 'yellow',
'orange': 'orange'
};
var text = '';
for(var i in fruits) {
text += i + ': ' + fruits[i] + 'n';
}
alert(text);
在 Javascript 中使用“In”查看对象属性和方法
您可以使用in找出对象在 javascript 中具有哪些属性和方法。在下面的代码中,我们定义了一个简单的 javascript 类,创建该类的一个对象,然后遍历该对象的属性和方法。
function hello() {
alert('Apples are ' + this.apple);
}
function fruits(){
this.apple = 'green';
this.orange = 'orange';
this.strawberry = 'red';
this.hello=hello;
}
var basket = new fruits();
var text = '';
for(var i in basket) {
text += i + ': ' + basket[i] + 'n';
}
alert(text);
使用“In”检查哈希是否包含键
除了帮助您迭代事物之外,in运算符还可用于检查哈希是否具有特定键:
var fruits = {
'apple': 'green',
'banana': 'yellow',
'orange': 'orange'
};
if('apple' in fruits) {
alert('Got apple!');
}
使用“In”检查对象是否具有属性或方法
这也适用于对象;您甚至可以使用in检查 javascript 对象是否具有特定方法。
function apple() {
this.color = 'green';
this.eat = function() {
alert('mmmmm!');
};
}
var fruit = new apple();
if('eat' in fruit) {
alert('Got eat method!');
}
if('color' in fruit) {
alert('Got color!');
}
使用 Javascript ‘In’ 作为使用 ‘If’ 的多变量测试的替代方案
通常在 javascript 中,您希望将某个变量与一系列可能的值进行比较。作为带有多个“或”子句的 long if的替代方法,您可以简单地测试您的变量是否等于哈希中的一个键。
换句话说,您可以替换它:
var text = 'hello';
if(text == 'yes' || text == 'no' || text == 'hello') {
alert('Match!');
}
有了这个:
var text = 'hello';
if(text in {'yes':1, 'no':1, 'hello':1}) {
alert('Match!');
}
以上就是js中in的用法,希望对你有帮助
常见问题FAQ
- 程序仅供学习研究,请勿用于非法用途,不得违反国家法律,否则后果自负,一切法律责任与本站无关。
- 请仔细阅读以上条款再购买,拍下即代表同意条款并遵守约定,谢谢大家支持理解!