jshint erwartet das neue 'Präfix' für Funktionen
CSiginIn
CSignUp
CTryIt
CBlocks
sind alle Funktionen erklärt
function CSignIn(){//stuff here}
doch JSHint sagt, ich bin fehlen die 'neuen' 'prefix'. Was kann ich tun um dies zu beheben?
Sind Sie nur Funktionen, die im Modul-Muster. Es ist auch zu Fragen, mich zu entfernen Semikolon hatte ich am Ende der Funktion, die ich getan habe.
var Control = ( function ()
{
/**
*Publik
*/
var publik = function ( page )
{
//page 1 initialization
if( page == 1 )
{
CSignIn();
CSignUp();
CTryIt();
CBlocks();
}
Funktion Beispiel...
function CTryIt()
{
//pull elements
var tryit_button = document.getElementById( 'tryit_button' );
//initialize access to Model
tryit_button.addEventListener( "click", function( )
{
new AjaxRequest().invoke( 'ajax_type=ControlTryIt',
function( server_response_text )
{
new AjaxResponse( server_response_text, 'page_change' );
} );
}, false );
}
InformationsquelleAutor der Frage CS_2013 | 2012-05-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn
newcap
aktiviert ist, JSHint erwartet-Funktionen beginnen mit einem Großbuchstaben zu werden, Konstruktoren und daher aufgerufen werden, mit dernew
Schlüsselwort.Lösung: Entweder diese option deaktivieren oder umbenennen Ihrer Funktionen.
Aus der Dokumentation:
Für eine mehr in die Tiefe Verständnis, wie
this
funktioniert, Lesen Sie Grundlegendes zu JavaScript-Funktion aufrufen und "das" von Yehuda Katz.InformationsquelleAutor der Antwort Felix Kling
Felix Kling schon gab Sie die richtige Antwort. Der Vollständigkeit halber möchte ich anmerken, dass
newcap
standardmäßigtrue
(Die Dokumentation nicht, aber man kann es Lesen in den Quellcode). Dies bedeutet, dass das löschen der Einstellungnewcap: true
im JSHint Optionen nicht deaktivieren der Warnung: stattdessen müssen Sie explizit festlegennewcap: false
.InformationsquelleAutor der Antwort GOTO 0