Quatro formas de existência de funções:
1. Morfologia funcional
2. O formulário de método atribui uma função a um membro de um determinado objeto, que é chamado de método.
3. Forma do construtor
4. Forma contextual
1. Formulário de função:
var foo = function () {alert (this); // Esta é a janela};2. Formulário do método:
o = {}; o.foo = foo; // Atribua função foo ao atributo foo do objeto o.foo (); // O objeto aparece, e isso neste momento representa o objeto var lib = {test: function () {alert (this); // Isso aqui representa objeto (objeto lib) // var que = this; // Se você deseja que isso represente um objeto LIB em uma função anônima, você pode fazer isso (function () {alert (this); // A função anônima aqui não pertence a um objeto lib, então isso ainda representa a janela}) (); }}; lib.test ();3. Construtor (construtor) var p = new Person ();
1. Novo cria um objeto e abre espaço
2. Passe o endereço de referência do objeto para a função e receba -o com isso na função.
3. A execução do método de construção termina, devolva esta
var pessoa = function () {this.age = 19; this.name = "mrjing"; return "{}";}; var p = new Person (); Alert (p.name); // O pop-up é indefinido. Como a função retorna um objeto, o objeto é retornado diretamente à pessoa e o atributo de idade e nome é ignorado var pessoa = function () {this.age = 19; this.name = "mrjing"; retornar 123;}; var p = new Person (); Alert (p.name); // "Mrjing" aparece. Como o valor de retorno não é um objeto, o alerta de valor de retorno (p); // objeto pop -upAs coisas que foram alteradas incluem: o construtor altera o valor de retorno da função; Se o valor de retorno da função for um objeto, retorne de acordo com o valor de retorno; Se o valor de retorno não for um objeto, ignore o valor de retorno e retorne diretamente isso;
4. Função do padrão de chamada de contexto.Apply (Object, [Lista de parâmetros])
var foo1 = função (a, b) {alert (this); retornar a> b? a: b;}; var num = foo1.Apply (null, [112, 34]); // Nesse momento, Foo1 é um formulário de função, isso significa WiDownum = Foo1.Apply ({}, [112, 34]); // Neste momento Foo1 é um formulário de método, isso significa que o objeto passou no parâmetro {}function.call (objeto, lista de parâmetros);
var num1 = foo1.call (null, 112,34); num1 = foo1.call ({}, 112,34); // exceto para a lista de parâmetros, o restante é o mesmo que aplicarO artigo acima discute brevemente as quatro formas de funções JavaScript. Este é todo o conteúdo que compartilho com você. Espero que você possa lhe dar uma referência e espero que você possa apoiar mais o wulin.com.