2017-10-26 1 views
1

Ich lerne Javascript. Ich schrieb eine JS, um einen JSON-Wert zurückzugeben.Wenn die Anweisung in Javascript Werte zurückgibt

var generateUrl = function(Name, Letter, rootUrl, V1) { 
    rootUrl = rootUrl || Letter; 
    return { 
    classname: 'mycss-' + Letter, 
    text: Name, 
    url: rootHref.replace(Rex, "$1" + rootUrl + "."), 
    onclick: { 
     fn: clickFn, 
     obj: V1 
    } 
    }; 
}; 

Ich möchte ein if statement innerhalb url: hinzuzufügen. Wenn zum Beispiel Name = google, url diese Logik rootHref.replace(Rex, "$1" + rootUrl + ".") nicht verwendet, wird stattdessen direkt return an url. Ich habe eine ganze Weile nach einer Antwort gesucht, aber immer noch kein Glück. Kann jemand mir sagen, wie man eine if statement Logik in meinem Code hinzufügt.

+3

Mit dem [ternären Operator] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Conditional_Operator) statt. – Xufox

+3

Das Ding, das Sie zurückgeben, wird ein Objektliteral genannt, nichts mit JSON zu tun. Sie können nicht viel Logik in ein Objektliteral einfügen, aber Sie können es einer Variablen zuweisen und dann Klammer- oder Punktnotation verwenden, um einen neuen Eigenschaftswert zuzuweisen (zB 'if (thing ==" google ") myObj.url =" Google-spezifische URL ";') – James

Antwort

4

Versuchen als

folgt
url: (num == 1) ? Link1 : Link2, 
+1

Wenn es funktioniert, markieren Sie es als die Antwort! –

+1

Jederzeit !!!!!!! –

Verwandte Themen