Een typische JavaScript-functie geeft een geordende lijst van argumenten . Wanneer u de functie aanroept , u een waarde voor elk argument pas in de aangegeven volgorde . Een functie die de naam parameters accepteert voegt een label aan elke waarde . Dit biedt een aantal voordelen , maar kan ook vereisen meer code . Naar geïmplementeerde benoemde parameter functies , moet u de functionaliteit simuleren omdat het niet standaard ondersteund door JavaScript . Parameters Naamloos Een typische functie in JavaScript omvat een of meer argumenten variabelen . Je moet het doel van elk argument kennen , of het nodig is en als er een standaardwaarde voordat je de functie aanroept . Wanneer u de functie aan te roepen , de vereiste argumenten in de volgorde waarin ze worden geacht te verschijnen . Bijvoorbeeld , de functie " parseInt " heeft twee argumenten . De eerste parameter is verplicht string worden geanalyseerd en omgezet in een geheel getal . De tweede parameter is optioneel getal dat de basis van de resulterende integer , welke standaard " 10 " als niet geleverd . Noemen " parseInt " met een of twee argumenten in de volgorde aangegeven : var touwtje = " 3829 " ; var s = parseInt (string ) ; var t = parseInt (string , 10 ) ; //deze zijn hetzelfde , omdat " 10 " is de standaard genoemd Parmeters In een JavaScript-functie met behulp van benoemde parameters , elk argument heeft een label gekoppeld. Passeren een label - waarde paar aan de functie voor elk argument met een dubbele punt tussen het label en de waarde . Voegen van alle label - waarde paren in accolades . Definieer de functie om een argument te aanvaarden en toegang tot de functie parameters zoals de eigenschappen van het argument . Bijvoorbeeld , de volgende code maakt een tip berekening functie die de benoemde parameters " billTotal " en een optionele accepteert " tipExtra . " De functie berekent vervolgens de tip door te vermenigvuldigen " billTotal " met 20 procent en voegt de extra optionele tip . Let op de extra code die tests voor het bestaan van elke parameter voordat het wordt gebruikt en zorgt voor de uitzondering waar het niet wordt verstrekt : functie calculateTip ( tipInfo ) { if ( tipinfo.billTotal === undefined | | tipinfo . billTotal === null) return 0 ; var baseTip = tipinfo.billTotal * 0,2 ; baseTip + = tipinfo.tipExtra | | 0 ; return Math.round ( baseTip ) ; } theTip = calculateTip ( billTotal : 175 , 20 ) ; //calculateTip rendement " 55 " en nadelen Functies behulp benoemde parameters hebben een aantal voordelen . Ten eerste , ze zijn gemakkelijker te lezen en te debuggen omdat het argument label is opgegeven in de code waar de functie wordt aangeroepen . Ten tweede , kunt u de functie met de parameters in willekeurige volgorde noemen . Het derde voordeel is dat u een parameter kunt weglaten zonder dat een fout wanneer je de functie aanroept . Echter , de naam - parameter functies hebben ook een aantal nadelen . De eerste is dat je de juiste label te voorzien van elke parameter en de tweede is dat je nodig hebt om code in de functie zelf die uitzonderingen zullen val waarbij een parameter niet is doorgegeven voegen . Functionaliteit Simulatie JavaScript heeft geen ingebouwde ondersteuning met behulp van benoemde parameters . De beschreven methode om de naam parameters te definiëren en te gebruiken is technisch gezien een simulatie van de naam - parameter functies . Technisch gezien , bent u het definiëren van een functie die een argument , dat is een doel is . Wanneer u de functie , in plaats van het passeren van een object variabele bellen , wordt u langs een reeks van eigenschappen van objecten ingesloten in een set van accolades , waarin een object creëert " on-the - fly . " Elk benoemde parameter is toegankelijk door aanpakken van een eigenschap van het object , en de syntaxis van een benoemde parameter en een objecteigenschap toevallig identiek te zijn aan te pakken .
|