Domanda

Su raccomandazione Elevatori, ho letto di Crockford eccellente Javascript:. Le parti buone

E 'un grande libro, ma dal momento che gran parte di essa è dedicata a descrivere il modo migliore per utilizzare le funzionalità di base di Javascript, io non sono sicuro di come posso mettere i suoi consigli in pratica senza duplicare gli sforzi di molti altri programmatori JavaScript.

Prendete questo passaggio, ad esempio:

  

Quando si effettua un nuovo oggetto, è possibile selezionare l'oggetto che dovrebbe essere il suo prototipo. Il meccanismo che Javascript fornisce per fare questo è disordinata e complessa, ma può essere semplificata in modo significativo. Noi aggiungeremo un metodo create alla funzione Object. Il metodo <=> crea un nuovo oggetto che utilizza un vecchio oggetto come il suo prototipo.

if (typeof Object.create !== 'function') {
 Object.create = function(o) {
  var F = function () {};
  F.prototype = o;
  return new F();
}

Potrei aggiungere manualmente questo codice per tutti i miei progetti Javascript, ma tenere traccia di tutto ciò sarebbe stato un dolore enorme.

Ci sono le librerie che implementano La buona parte 's consigli e così mi risparmiare la fatica di dover tenere traccia di loro (/ fisicamente tutti i tipi fuori)?

È stato utile?

Soluzione

Prototype ha molte caratteristiche, tra cui un classe helper che gestisce i dettagli di JS "eredità" tramite il prototipo dell'oggetto.

Modifica: accidenti, io continuo a dimenticare che jQuery (la mia libreria di scelta) ha jQuery. estendere

Altri suggerimenti

Non ha funzionato per Yahoo? Si può sempre utilizzare i Yahoo librerie di interfaccia utente .

Personalmente, io ho un debole per JQuery , in quanto mi sembra più conciso, ma si sa: i cavalli per i corsi.

Dojo ha seguito molto da vicino le idee di Crockford. Ad esempio, v'è un'implementazione del frammento di codice che avete sopra implementato sotto la funzione dojo.delegate (in una forma ancora più veloce).

Non credo che ci sia un progetto specifico che seguono le sue raccomandazioni per un tee. La maggior parte dei toolkit in realtà non sono d'accordo con un bel po 'dei suoi consigli e modelli. Se vi state chiedendo su funzionalità specifiche, come quella frammento di codice di cui sopra, sarebbe la pena di chiedere che gli strumenti specifici del libro che si desidera utilizzare nei vostri progetti.

Credo che YUI è il più vicino a quello che Crockford insegna nel suo libro. (Lui è l'architetto Yahoo anche e ha senso)

Dai un'occhiata alla ES5-shim , una libreria che fornisce un - seppur incompleta - shim per Object.create() e altre cose.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top