2016-04-25 15 views
10

Ich benutze angularjs, und Probleme mit null Zuweisung nur in Safari. Es arbeitet in Chrom und Firefox.Default Funktion Parameter Wert in Safari funktioniert nicht

$scope.submit = function(id=null){ 
} 

ich diese Störung erhalten

SyntaxError: Expected token ')' 

wenn ich null entfernen, es funktioniert einfach. Ich weiß nicht warum!

$scope.submit = function(id){ 
} 

Bitte helfen Sie mir zu verstehen, warum dies nur mit Safari passiert?

+4

Standardfunktionsparameterwerte sind ein ES2015 Feature, das Safari scheinbar nicht unterstützt. – Pointy

Antwort

13

Default parameters von ES2015 werden in Safari noch nicht unterstützt. Bitte überprüfen Sie die compatibility table.

die grundlegende Unterstützung Im Moment bieten Chrome 49 und Firefox 15.


Aber Sie folgende ES5-Code verwenden können, das gleiche zu erreichen:

$scope.submit = function(id) { 
    if (id === undefined) { 
    id = null; 
    } 
} 
+0

Danke, kennst du bitte eine Alternative dafür? –

+0

@searching ... Antwort für eine ES5-Lösung aktualisiert. –

+0

Vielen Dank nochmal :) –

Verwandte Themen