JavaScriptの場合

JavaScriptの実行環境、Node.jsのバージョン24で確認したサンプルプログラムです。
他のスクリプト言語と比べると意外な所にクセがあります。 変数展開を伴う文字列をバッククォートで囲む点、for-inとfor-ofの違いに特に注意が必要です。
なお、以前のvarはES6以降はletとconstに分化しました。Kotlinのvarとvalと同じ使い分けです。

/*============================*
 * 複数行のコメントは
 * このように
 * 書けます。
 *============================*/

// 1行コメントはこのように書けます。

console.log("Hello, World.");
console.log("こんにちは。");

// JavaScriptはセミコロンは省略できますが、この例では必ずつけています
// 再代入を許可する変数はlet、しない変数はconstで宣言
const var1 = 42;
let var2 = 35;
let var3 = var1 + var2;
let var4 = var1 - var2;

// 変数展開させる文字列はバッククォートで囲む
console.log(`結果は${var3}と${var4}`);
// 下はES6以前の書き方。変数展開はできない
const msg = "結果は" + var3.toString() + "と" + var4.toString();
console.log(msg);

var2 += 18;
var3--;
var4++;
console.log(`${var2} ${var3} ${var4}`);

// 配列はArray()かリテラル[]で定義できる。現在は[]で定義するのが主流
// 初期化時の値は 42 53 76 8
const arr1 = [var1, var2, var3, var4];

// 分岐と反復
// 値を取り出すのはfor-inではなくfor-ofなので混同しないよう注意
for(const v of arr1){
    if(v >= 50){
        console.log(`${v}は50以上です。`);
    } else if(v >= 40 && v < 50){
        console.log(`${v}は40以上50未満です。`);
    } else {
        console.log(`${v}は50未満です。`);
    }
}

let var5 = 1;
/*
for(let i=0; i<arr1.length; i++){
    var5 *= arr1[i];
}
*/
// C言語型のfor文も書けるが、下の書き方の方がJavaScriptらしい。
for(const v of arr1){
    var5 *= v;
}

// JavaScriptにはsprintfはないが、
// toLocaleStringで(日本では)カンマ区切りになる。
console.log("計算結果:[" + var5.toLocaleString("ja-JP", {
    minimumFractionDigits: 2, maximumFractionDigits: 2
}) + "]");

const str1 = "Hello,Power,Shell,World";
// lengthに括弧は不要
console.log("文字列の長さは" + str1.length);

// 大文字に変換。Javaと同じ
console.log(str1.toUpperCase());
// 配列の分割もJavaと同じString#split()
const arr2 = str1.split(",");
// 配列を表示
console.log(arr2);

// 正規表現
const re = /^.[opqr]/;
for(const v of arr2){
    if(re.test(v)){ // 2文字目がopqrのいずれか
        console.log(`${v}はマッチします。`);
    } else {
        console.log(`${v}はマッチしません。`);
    }
}

// JavaScriptのビルトインの日付のフォーマット機能としてはIntl.DateTimeFormatがあるが、
// ここでは自作の関数でフォーマットする
// 月は+1する必要がある。またHours,Minutesなど末尾のsが必要な点も注意
function formatDateTime(d){
    return d.getFullYear()+"/"+lpad2(d.getMonth()+1)+"/"+lpad2(d.getDate())+" "+
       lpad2(d.getHours())+":"+lpad2(d.getMinutes())+":"+lpad2(d.getSeconds());
}
function formatDate(d){
    return d.getFullYear()+"/"+lpad2(d.getMonth()+1)+"/"+lpad2(d.getDate());
}

// 左0詰する関数も自分で定義
/*
function lpad2(s){
    //return ('00'+s).slice(-2);
    return String(n).padStart(2, "0");
}
*/
// 次のような書き方もできる。アロー関数と呼ばれる書き方で、ES6以降で使える。
const lpad2 = (n) => String(n).padStart(2, "0");

// 現在時刻の取得
const dstr1 = formatDateTime(new Date());
// 指定した年月日の値を取得。月は1月が0なので注意
const dstr2 = formatDate(new Date(2020, 4-1, 26, 0, 0, 0));

// Perl等のヒアドキュメントをJavaScriptではテンプレートリテラルと呼ぶ。
// バッククォートで囲むことで複数行の文字列を定義できる。
// バッククォートの直後/直前で改行すると改行文字も入る点に注意
const s = `現在時刻は${dstr1}です。
特定の日付とは…${dstr2}です。`
console.log(s);
// end.