专业编程基础技术教程

网站首页 > 基础教程 正文

JavaScript 为对象添加方法和属性

ccvgpt 2024-11-20 13:05:47 基础教程 7 ℃

为对象添加方法和属性

<script type="text/javascript">
//  创建对象
// var 对象名称 = {成员名称:成员值,成员名称:成员值,成员名称:成员值.....}
var obj = {};
document.write(obj);
var cat = {name:'kitty',"leg":4,climb:function(){document.write("在爬树")}};
document.write(cat.name);
document.write(cat.leg);
cat["climb"]();
cat.climb();
obj.color = "yellow";
obj.say = function(){
document.write("旺旺");
}
document.write(obj);
</script>

实例2:

JavaScript 为对象添加方法和属性

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
<script>
function createPerson(name, qq) //构造函数
{
var obj=new Object();

obj.name=name;
obj.qq=qq;

obj.showName=function (){
alert('我的名字叫:'+this.name);
};
obj.showQQ=function (){
alert('我的QQ号:'+this.qq);
};

return obj;
}
var obj=createPerson('blue', '258248832');
obj.showName();
obj.showQQ();
var obj2=createPerson('张三', '45648979879');
obj2.showName();
obj2.showQQ();
</script>
</head>
<body>
</body>
</html>

实例3: this指向

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>Document</title>
</head>
<body>
</body>
<script type="text/javascript">
var obj = {
name:"小明",
age : 12,
sex : "男",
sayHello : function(){
alert("你好,我是" + this.name + ",我今年" + this.age)
}
}
obj.sayHello();
//现在调用sayHello函数的时候,是通过obj打点调用,所以这个sayHello函数的上下文就是obj对象。
//即sayHello函数内部的this指向obj。
//
//但是千万不要认为写在对象里面的函数,上下文(this)一定是这个对象
// 比如
var name = "小红";
var age = 18;
var obj = {
name:"小明",
age : 12,
sex : "男",
sayHello : function(){
alert("你好,我是" + this.name + ",我今年" + this.age)
}
}
var fn = obj.sayHello;
fn(); //直接()调用,不是对象打点调用,所以this的上下文是window
// 函数的上下文是什么,取决于怎么调用,而不是看函数如何定义
// 函数的上下文是函数调用时表现的性质,不是函数定义时写死的性质
</script>
</html>

最近发表
标签列表