<script>
//对象操作运算符------new
//new运算符可以根据构造函数创建一个新的对象,并且初始化该对象;
//语法: new constructor(arguments)
//condtrustor是一个构造函数表达式,如果函数没有调用参数时小括号可以省略
//用new运算符实例化Array的三种方法;
var b=new Array();//创建数组结构对象
var a=new Array;//创建数组结构对象,省略小括号
var c=new Array(1,2,3)//创建数组结构对象并赋值1,2,3
alert(c[1]);
// //自定义类(构造函数),并使他创建新的对象。
// //将一个类的数据结构赋值给一个变量是,必须使用new运算符进行初始化(实例化)
// // 错误例子:
var a=function(){
x:'y'
}
var b=a;
alert(b.x);//undefined
// 正确写法:
var a={
this.x=1;
};
var b=new a;
alert(b.x);
//或者
var a=function(){
this.x=1;
};
var b=new a;
alert(b.x);
alert(a.x)//undefined
var c=new b;//这里会报错,new只针对构造函数(类),因为b不是一个构造函数表达式,也就是说new运算符创建的新的对象不能再被初始化或者实例化。
alert(c.x)
</script>
//对象操作运算符------new
//new运算符可以根据构造函数创建一个新的对象,并且初始化该对象;
//语法: new constructor(arguments)
//condtrustor是一个构造函数表达式,如果函数没有调用参数时小括号可以省略
//用new运算符实例化Array的三种方法;
var b=new Array();//创建数组结构对象
var a=new Array;//创建数组结构对象,省略小括号
var c=new Array(1,2,3)//创建数组结构对象并赋值1,2,3
alert(c[1]);
// //自定义类(构造函数),并使他创建新的对象。
// //将一个类的数据结构赋值给一个变量是,必须使用new运算符进行初始化(实例化)
// // 错误例子:
var a=function(){
x:'y'
}
var b=a;
alert(b.x);//undefined
// 正确写法:
var a={
this.x=1;
};
var b=new a;
alert(b.x);
//或者
var a=function(){
this.x=1;
};
var b=new a;
alert(b.x);
alert(a.x)//undefined
var c=new b;//这里会报错,new只针对构造函数(类),因为b不是一个构造函数表达式,也就是说new运算符创建的新的对象不能再被初始化或者实例化。
alert(c.x)
</script>