簡體   English   中英

JavaScript在函數中傳遞變量

[英]Javascript passing variable in function

我是javascript新手。 我正在創建文字冒險。 我正在嘗試編寫一個函數以接受給定的參數,並使用.toLowerCase並將其作為同一變量返回。 我認為我有這樣做的一般想法,但我只是無法使其正常工作。 謝謝!

function lowercase(a){
    return a.toLowerCase();
}

var alive = 1;
while(alive == 1){
    var name = prompt("What is your name?");
    lowercase(name);
    document.write("Hello " + name + "!\n");
    break;
}

您需要分配函數的結果:

name = lowercase(name);

您是一般的編程新手嗎? 因為Java在這方面與大多數其他語言相似。

name = lowercase(name);

由於要在函數中返回值,因此必須重新初始化變量的值。 據我所知,JavaScript不是“通過引用”語言。 一直以來都是“傳遞價值”。 在此處了解更多信息。

按引用傳遞與按值傳遞有什么區別?

名稱變量的值目前未更改,您需要將其分配給函數的結果。

 function lowercase(a){ return a.toLowerCase(); } var alive = 1; while(alive == 1){ var name = prompt("What is your name?"); name = lowercase(name); document.write("Hello " + name + "!\\n"); break; } 

使用name = lowercase(name); 該函數返回一個結果,但是您必須將此結果分配給變量才能在之后使用它,或者您可以簡單地說

document.write('Hello' + lowercase(name) + 'something');
name = lowercase(name);

請注意,您幾乎應該始終使用“ ===”而不是“ ==“。 “ ===”測試某項的值和數據類型(數字,字符串,布爾值,對象等)是否匹配,而“ ==”僅測試某項值和數據類型是否匹配(在執行類型轉換之后)。 例如:

if ("42" == 42) { // true (string 42 equals number 42)
if ("42" === 42) { // false (string does not equal number, what you want)

暫無
暫無

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

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