// 创建对象的3种方式
var box = new Object();
var box = Object();
var box = {};
// 定义对象属性
box.name = "Gina";
box.age = 20;
var box = {
"name" : "Gina", // 属性也可以加引号
"age" : 21
};
var box = {
name : "Gina",
age : 21
};
// 输出属性的2种方式:
alert(box.name + " " + box.age)
alert(box["name"] + " " + box["age"]); // 用数组的方式输出,一定要加引号
function box(obj){
if (obj.name != undefined) alert(obj.name);
if (obj.hobby != undefined) alert(obj.hobby);
if (obj.name != undefined) alert(obj.age);
}
box({
name:"Gina",
age:20,
height:170
});
var box = [
{
name:"Gina",
age:20
},
[3,4,6,"Hello",new Object()],
"计算机",
25+25,
new Array(1,2,3)
];
alert(box);
alert(box[0].name);
var box = ["Gina", 20, "shanghai"];
box.push("计算机","Hello"); // 向数组末尾添加元素,返回数组的长度
box.pop(); // 移除数组最后一个元素,返回被移除的元素
box.unshift("OneAdd"); // 将元素添加到数组的第一个元素,返回数组的长度
box.shift(); // 移除数组中的第一个元素,返回被移除的元素
alert(box.toString());
alert(box.join("--"));
function compare(num1, num2){
if (num1 < num2){
return -1;
}else if(num1 > num2){
return 1;
}else{
return 0;
}
}
var box = [0, 1, 5, 10, 15];
alert(box.sort(compare));
alert(box.reverse());
function one(sum, num){
return sum(num);
}
function sum(num){
return num+10;
}
var a = one(sum, 10);
alert(a);
function sum(num){
if (num <= 1){
return 1;
}else{
return num * arguments.callee(num-1); // arguments.callee 调用自身
}
}
alert(sum(5));
// 工厂模式
function createObject(name, age){
var obj = new Object();
obj.name = name;
obj.age = age;
obj.run = function (){
return this.name + this.age + "运行中...";
};
return obj;
}
var box1 = createObject("Ting", 100);
var box2 = createObject("Jack", 200);
alert(box1.run());
alert(box2.run());
// 构造函数
function Box(name, age){
this.name = name;
this.age = age;
this.run = function(){
return this.name + this.age + "运行中...";
};
}
var box1 = new Box("Ting", 100);
var box2 = new Box("Jack", 200);
alert(box1.run());
alert(box2.run());
// 原型
function Box(){}
Box.prototype.name = "Ting";
Box.prototype.age = 100;
Box.prototype.run = function (){
return this.name + this.age + "运行中...";
};
var box1 = new Box();
alert(box1.run());
var box2 = new Box();
box2.name = "Jack";
box2.age = 300;
alert(box2.run());
1. Javascript对象
function myFun(){
var x;
var txt = "";
var person = {fname:"Bill", lname:"Gate", age:56}
for (x in person){
txt = txt + person[x] + " ";
}
document.getElementById("demo").innerHTML = txt;
}
2. break
cars=["BMW","Volvo","Saab","Ford"];
list:{
document.write(cars[0] + "<br>");
document.write(cars[1] + "<br>");
document.write(cars[2] + "<br>");
break list;
document.write(cars[3] + "<br>");
document.write(cars[4] + "<br>");
document.write(cars[5] + "<br>");
}
3.
var person = {
firstName : "I am",
lastName : "Shanghai",
age : 5,
fullName : function() {
return this.firstName + " " + this.lastName;
}
};
document.getElementById("demo").innerHTML = person.fullName();
***********************
function person(name, age){
this.name = name;
this.age = age;
this.changeName = changeName;
function changeName(name){
this.name = name;
}
}
myMother = new person("Sally", 50);
myMother.changeName("Doe");
document.write(myMother.name);
// 将方法添加到JS对象
function person(firstname,lastname,age,eyecolor)
{
this.firstname=firstname;
this.lastname=lastname;
this.age=age;
this.eyecolor=eyecolor;
}
// 使用对象构造器来构造函数
myFather=new person("John","Doe",50,"blue");
document.write(myFather.firstname + " is " + myFather.age + " years old.");