with(object instance)
{
//代码块
}
有时候,在一个程序代码中,多次需要使用某对象的属性或方法,照以前的写法,都是通过:对象.属性或者对象.方法这样的方式来分别获得该对象的属性和方法,着实有点麻烦,学习了with语句后,可以通过类似如下的方式来实现:
with(objInstance)
{
var str = 属性1
.....
} 去除了多次写对象名的麻烦。
举例:
<script language="javascript">
<!--
function Lakers() {
this.name = "kobe bryant"
this.age = "28"
this.gender = "boy"
}
var people=new Lakers()
with(people)
{
var str = "姓名: " + name + "<br>"
str += "年龄:" + age + "<br>"
str += "性别:" + gender
document.write(str)
}
//-->
</script>
代码执行效果如下:
姓名: kobe bryant
年龄:28
性别:boy
<!DOCTYPE HTML><html>
<head>
<title>yugi</title>
<meta charset=UTF-8 />
<style type="text/css">
</style>
<script type="text/javascript" src="jquery-1.8.0.min.js"></script>
<script type="text/javascript">
(function ()
{
with (this[2])
{
with (this[1])
{
with (this[0])
{
return function (event)
{
// 意思是调用this[2].this[1].this[0].checkChoice()
// 使用with语句,代表{}内部属于with()中的对象的属性或者方法
// 但是使用with语句,不易于修改和维护。此话源自js权威指南。
return checkChoice ()
}
}
}
}
}) ()
</script>
</head>
<body>
</body>
</html>