js 函数

function 测试(){

var a = 100;

function abc(){

alert(a);

}

return   abc()

}
var abc=测试();

abc();

 

 

var obj={};

function 测试(){
var a= 100;
function abc(){
alert(a);
}
obj.abc=abc;
}

测试();
aler(obj.abc)

 

把abc()赋值到 obj.的方法上去

 

window 对象 和  navigator  对象   

 

 

function 测试(){
var a = 100;
function abc(){
alert(a);
}
windos.test =abc;
}

测试();
test();

 

 

三种改装方法

1.定义window 为{};

var window = {}; 
var w=""
!function(w) {
function i() {
    var a = 5;
    return a;
}
w.Hex = i;
} (window);
//运行就需要封装成一个函数
function test(){
    return  window.Hex()
}

 

2.把要运行的函数Hex()定义成程序集变量.

 

var window = {}; 
var Hex ={};
!function(w) {
function i() {
    var a = 5;
    return a;
}
  Hex = i;
} (window);
//把要运行的函数Hex()定义成程序集变量
function test(){
    return  Hex()
}

 

3.

var window = {}; 
!function(w) {
function i() {
    var a = 5;
    return a;
}
  Hex = i;
} (window);
//运行完自运行函数之后,定义HEX =WINDOW.HEX
Hex= window.Hex;
function test(){ return Hex() }

 

4.把函数和值都赋值到一个函数中

function add(a,b){
return a+b;
}

function test(a,b,f){
return f(a,b);
}

alert( test(5,6,add));

 

 

 

this          是本函数的意思

function test(){
var a= 100;
alert(this.a);
}

 

function test(){alert(this); }
var obj={c:function(){ alert(this);}}

obj.c();

 

function People(){
this.姓名="张三";
}

var people = new peopl("张三");
var people1 = new peopl("李四");

alert(people.姓名)

call   apply

var a =300;

function test(b){
c=this.a+b;
alert(this.c);
}

var obj = {
a:100;
}

var obj1 = {
a:200;
}

test.call(obj,200,,,,);   //第一个参数放对象,第二个参数放参数.

test.apply(obj,[200]); //第一个参数放对象,第二个参数放数组.

 

posted @ 2019-04-26 17:23  aladam  阅读(113)  评论(0编辑  收藏  举报