转自:http://bbs.bccn.net/thread-412608-1-1.html
in运算符
in运算符虽然也是一个二元运算符,但是对运算符左右两个操作数的要求比较严格。in运算符要求第1个(左边的)操作数必须是字符串类型或可以转换为字符串类型的其他类型,而第2个(右边的)操作数必须是数组或对象。只有第1个操作数的值是第2个操作数的属性名,才会返回true,否则返回false。
简单通俗的in的使用规范代码:
<html> <head> <title>in运算符</title> <script language="javascript" type="text/javascript"> <!-- //定义一个box对象 var box = {box_length:200,box_100}; //定义一个数组 var arr = ["box_length",200,"200"]; //定义变量 var x = "box_length"; var y = 2; if (x in box) { document.write("变量x包含在对象box之中<br>"); } else { document.write("变量x不包含在对象box之中<br>"); } if (y in box) { document.write("变量y包含在对象box之中<br>"); } else { document.write("变量y不包含在对象box之中<br>"); } if (x in arr) { document.write("变量x包含在数组arr之中<br>"); } else { document.write("变量x不包含在数组arr之中<br>"); } if (y in arr) { document.write("变量y包含在数组arr之中<br>"); } else { document.write("变量y不包含在数组arr之中<br>"); } --> </script> </head> <body> </body> </html>
运算结果:
变量x包含在对象box之中
变量y不包含在对象box之中
变量x不包含在数组arr之中
变量y包含在数组arr之中