javascript 构造函数方式定义对象

  • javascript是动态语言,可以在运行时给对象添加属性,也可以给对象删除(delete)属性

<html>
<head>
<script type="text/javascript">
/*
//01.定义对象第一种方式
var object =new Object();
alert(object.username);
//01.1增加属性username
object["username"]="liujianglong";
//object.username="liujl";
alert(object.username);

//01.2删除属性username
delete object.username;//username属性已经从object对象中删除
alert(object.username);
*/

//02.定义对象第二种方式--在javascript中定义对象的一种最常见的方式
var object={name:"zhangsan",age:10,sex:"fale"};
alert(object.name);
alert(object.age);
alert(object.sex);

</script>
</head>
<body>
</body>
</html>

属性名:方法名  也是可以的.因为函数本身就是个对象

 

  • javascript 数组排序

<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
var array=[1,3,25];

/////////////////////////////////
var compare=function(num1,num2){
    var temp1=parseInt(num1);
    var temp2=parseInt(num2);
    if(temp1<temp2){
        return -1;
    }else if(temp1==temp2){
        return 0;
    }else{
        return 1;
    }
}
//array.sort(compare);//01.函数名是对象引用
////////////////////////////////

//02.匿名函数方式//////////////////
array.sort(function c(num1,num2){
var temp1=parseInt(num1);
    var temp2=parseInt(num2);
    if(temp1<temp2){
        return -1;
    }else if(temp1==temp2){
        return 0;
    }else{
        return 1;
    }

});
/////////////////////////////////

alert(array);

</script>
</head>
<body>
</body>
</html>

 

 

  • javascript中定义对象的几种方式(javascript中没有类的概念,只有对象 )

    • 基于已有对象扩充其属性和方法
<script type="text/javascript">
//01.基于已有对象扩充其属性和方法
var object=new Object();
object.username="zhangsan";
object.sayName=function (name){
    this.username=name;
    alert(this.username);
}
alert(object.username);
object.sayName("lisi");
alert(object.username);
</script>

这种方法具有局限性,因为javascript不像java那样具有类的概念,写一个类,之后new就可以得到一个具有了这些属性、方法的对象了。

这时如果要拥有object2就只能把上面来的代码再写一份,这是不太好的。

    • 工厂方式

类似于java中静态的工厂方法。

<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
//对象工厂方法
var  createObject=function(){
    var object=new Object();
    object.username="zhangsan";
    object.password="123";
    object.get=function(){
        alert(this.username+" , "+object.password);
    }
    return object;
}
var obj1=createObject();
var obj2=createObject();

obj1.get();

//修改对象2的密码
obj2["password"]="123456";
obj2.get();
</script>
</head>
<body>
</body>
</html>
时间: 2024-10-19 09:39:26

javascript 构造函数方式定义对象的相关文章

javascript 构造函数方式定义对象 (转载)

javascript 构造函数方式定义对象 javascript是动态语言,可以在运行时给对象添加属性,也可以给对象删除(delete)属性 <html> <head> <script type="text/javascript"> /* //01.定义对象第一种方式 var object =new Object(); alert(object.username); //01.1增加属性username object["username&q

深入javascript——构造函数和原型对象

深入javascript——构造函数和原型对象 常用的几种对象创建模式 使用new关键字创建 最基础的对象创建方式,无非就是和其他多数语言一样说的一样:没对象,你new一个呀! var gf = new Object(); gf.name = "tangwei"; gf.bar = "c++"; gf.sayWhat = function() { console.log(this.name + "said:love you forever");

链接:深入理解javascript构造函数和原型对象

链接:深入理解javascript构造函数和原型对象http://www.jb51.net/article/55539.htm

谈谈对Javascript构造函数和原型对象的理解

对象,是javascript中非常重要的一个梗,是否能透彻的理解它直接关系到你对整个javascript体系的基础理解,说白了,javascript就是一群对象在搅..(哔!). 常用的几种对象创建模式 使用new关键字创建最基础的对象创建方式,无非就是和其他多数语言一样说的一样:没对象,你new一个呀! var gf = new Object(); gf.name = "tangwei"; gf.bar = "c++"; gf.sayWhat = function

javascript构造函数及原型对象

/** @ javascript中没有类的概念,所以基在对象创建方面与面向对象语言有所不同* @ 对象创建的常用方法及各自的局限性* @ 使用Object或对象字面量创建对象* @ 工厂模式创建对象* @ 构造函数模式创建对象* @ 原型模式创建对象* @ 构造与原型混合模式创建对象*/ 使用Object或对象字面量创建对象 /* * @ 使用Object或对象字面量创建对象 * @ 最基本的创建对象的方法 */ // 创建一个student对象, new一个Object var student

Javascript构造函数、原型对象、实例的关系与区别

构造函数与普通函数的唯一区别,就在于调用方式.任何函数通过new形式调用,就都是构造函数. 原型对象,只要创建了一个函数,那么一定会为这个函数创建一个prototype属性.而这个属性指向的就是原型对象. 实例,是new构造函数之后的结果.它会包含一个[[prototype]]属性(该属性无法直接访问),该属性指向原型对象. function Person(){ } Person.prototype.name = "Nicholas"; Person.prototype.age = 2

javascript之工厂方式定义对象

每一个函数对象都有一个length属性,表示该函数期望接收的参数个数. <html> <head> <script type="text/javascript"> var add =function(num1,num2,num3){ alert(num1+num2+num3); } alert(add.length); </script> </head> <body> </body> </html

JavaScript中定义对象的四种方式 2012-5-10 15:19 阅读(0)

最近在阅读< JavaScript 高级程序设计>,未免遗忘读过的内容,就打算以博客的形式做些读书笔记.今天介绍的是 JavaScript 中的四种定义对象的方法,除了这四种方法,还有工厂方法来定义对象,但考虑到其简单性及非正规性,这里就不做介绍.和 Java 这样的面向对象语言相比, JavaScript 更像是函数式语言,其并没有类的概念,盖之以对象定义的概念,而具体创建的对象叫做对象的实例. 1)构造函数方式定义对象. 这种方式是在构造函数内定义属性和方法.这里举个简单的例子: func

JavaScript中定义对象的四种方式

最近在阅读< JavaScript 高级程序设计>,未免遗忘读过的内容,就打算以博客的形式做些读书笔记.今天介绍的是 JavaScript 中的四种定义对象的方法,除了这四种方法,还有工厂方法来定义对象,但考虑到其简单性及非正规性,这里就不做介绍.和 Java 这样的面向对象语言相比, JavaScript 更像是函数式语言,其并没有类的概念,盖之以对象定义的概念,而具体创建的对象叫做对象的实例.     1)构造函数方式定义对象. 这种方式是在构造函数内定义属性和方法.这里举个简单的例子: