1 Js之function

function:
1、function是一个函数
2、function是一个对象,可以利用该对象的constructor属性找到该对象的构造函数
3、一个对象(这个对象必须有值,不能是null,undefined)可以动态的添加任何一个属性
4、一个function同时又是一个构造器函数
5、任何一个对象都有可能成为任何一个对象的属性

/**
 * 1 在js中一切皆为对象
 * 2 在js中,对象有一个属性为constructor
 * 3 在js中,凡是函数都有构造器对象
 * 4 在js中,一个对象可以动态的添加任何一个属性
 * 
 */
//函数的第一种表示方式
function aa(){}

/**
 * aa.constructor是一个对象为Function
 * 因为aa是通过new Function的形式产生的,所以aa的构造器就是Function
 * 
 */

alert(aa.constructor);
//函数的第二种表示方式
var a =function(){}
alert(a.constructor);

//函数的第三种表示方式
var aaa=new Function("5","6""var c =a+b");

//给aa对象添加了一个属性为b,值为5
aa.b=5;
alert(aa.b);
//给aa对象添加了一个属性bb,bb为对象,bb的值为 var a = function(){}
aa.bb =a;
aa.bb();

/**
 * 扩展
 */
function Person () {
    
}

function P(){
    
}

function A(){
    
}

function B(){
    
}

Person.a=P;
Person.a.b=A;
Person.a.b.c=B;
Person.a.b.c.d=a;
Person.a.b.c.d();

/**
 * Person.bb;
 * bb.a=P;
 * 所以bb的值为 undefined
 */
Person.bb.a=P;
Person.bb.a();

/**
 * 在js中任何一个对象都有可能称为任何一个对象的属性
 */

你可能感兴趣的:(1 Js之function)