簡體   English   中英

如何將字符串和函數參數混合到變量中

[英]How to mix strings and function parameters into a variable

所以我現在一直需要這樣的東西,但從來沒有找到適合我需要的東西,很可能我正在尋找錯誤的東西!

我的目標是從 foobar("test") 之類的函數中放入一個參數,並將該參數加上該函數中的一些預先編寫的字符串並將它們加在一起,從而成為一個預先存在的變量...

我想我的解釋很差……但希望代碼示例能得到更好的解釋……

我已經嘗試了一些明顯不起作用的簡單事情,所以我很可能不需要展示我做了什么......

var text1 = "this is text"

function foo(id) {
    object.innerHTML = "text" + 1 // Then plus those together and make it set it to the variable text1
}

foo(1)

預期:我希望它寫在對象“this is text”中,因為它使 text 和 id 變量又名 1 到 text1 中,這是一個帶有“this is text”字符串的變量

實際結果:顯然這行不通我什至不需要寫它就能發現這行不通......只是一個更好地解釋的例子......

希望能幫到你,謝謝!

var text1 = "this is text"

function foo(id) {
    object.innerHTML = window['text'+id];}

foo(1)

您必須使用 eval 函數。

 var text1 = "this is text" var text2 = "this is text2" function foo(id) { console.log(eval('text'+id)); } foo(2)

正如我在評論中所解釋的,從表面上看問題會導致推薦通常不必要且容易出錯的內容,因此應該避免。

還有更多可讀的選擇,比如創建一個對象並使用它的鍵和[]表示法:

 var texts = { example: "this is text", message: "Hello World!" }; function foo(id) { someDiv.innerHTML = texts[id]; } foo("message");
 <div id="someDiv"></div>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM