Python vs JavaScript -- 對比同一功能實現的代碼量

注 1: 本人使用 Python 的時間較長, 對 JavaScript 的實現可能不夠優雅, 如有不當之處還請指正, 謝謝!

注 2: 文章本身只展示兩種語言在表達同一功能時的簡潔力度, 不涉及複雜的功能需求的實現. 內容有個人偏向, 閱讀需謹慎.

時間轉換

將秒數轉換爲時分秒顯示, 例如 150 -> “02:30:00”

Python 實現:

def main(sec: int):
    """
    https://blog.csdn.net/lxq_9532/article/details/85759673
    """
    m, s = divmod(sec, 60)
    h, m = divmod(m, 60)
    return '{:0>2d}:{:0>2d}:{:0>2d}'.format(h, m, s)

JavaScript 實現:

function main(sec) {
    // https://www.bbsmax.com/A/kPzOgYaozx/
    var out = ''
    
    var h = Math.floor(sec / 3600)
    var m = Math.floor(sec / 60) % 60
    var s = sec % 60
    
    if (h < 10) { out += '0' + h + ':' } else { out += h + ':' }
    if (m < 10) { out += '0' + m + ':' } else { out += m + ':' }
    if (s < 10) { out += '0' + s } else { out += s }
    
    return out
}

字符串操作

將 “HELLO, world.” 中的空格去掉, 以及大寫轉小寫, 變爲: “hello,world.”

Python 實現:

text = 'HELLO, world.'
out = text.lower().replace(' ', '')
print(out)

JavaScript 實現:

var text = 'HELLO, world.'
var out = text
    .split('')
    .filter(char => char != ' ')
    .map(char => char.toLowerCase())
    .join('')
console.log(out)

for 循環

遍歷並打印字符串中的每一個字符

Python 實現:

text = 'abcdefg'
for char in text:
    print(char)

JavaScript 實現:

var text = 'abcdefg'

// == A ==
for (var i = 0; i < text.length; i++) {
    console.log(text[i])
}

// == B ==
text.forEach((char) => { console.log(char) })

// == C ==
for (const char of text) {
    console.log(char)
}


相關閱讀

  • https://pypi.org/project/javascripthon/
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章