Python註釋

Python是動態型別的語言。我們不需要指定變數、函數參數或函數返回值的型別。 註釋讓我們有了這個選擇。 下面是一個沒有註釋的函數: def increment(n): return n + 1 下面是相同函數帶有註釋的版本: def increment(n: int) -> int: return n + 1 你也可以對變數進行註釋: count: int = 0 Python會忽略這些註釋。一個叫做 mypy 的工具可以獨立運行,或者集成在像 VS Code 或 PyCharm 這樣的IDE中,它可以在你編寫代碼時靜態地自動檢查類型錯誤,幫助你在運行代碼之前捕捉到類型不匹配的錯誤。 當你的軟件變得龐大並且你需要重構代碼時,它將非常有幫助。

React PropTypes

如何使用PropTypes設置prop的要求類型 由於JavaScript是一種動態類型的語言,我們實際上沒有辦法在編譯時強制變量的類型,如果我們傳遞無效類型,它們將在運行時失敗,或者如果類型是兼容的但不是我們期望的類型時,將會得到奇怪的結果。 Flow和TypeScript在這方面提供了很大的幫助,但React有一種直接幫助處理props類型的方法,即使在運行代碼之前,我們的工具(編輯器,linters)可以檢測到我們傳遞了錯誤的值: import PropTypes from 'prop-types' import React from 'react' class BlogPostExcerpt extends Component { render() { return ( <div> <h1>{this.props.title}</h1> <p>{this.props.description}</p> </div> ) } } BlogPostExcerpt.propTypes = { title: PropTypes.string, description: PropTypes.string } export default BlogPostExcerpt 哪些類型可以使用 這些是我們可以接受的基本類型: PropTypes.array PropTypes.bool PropTypes.func PropTypes.number PropTypes.object PropTypes.string PropTypes.symbol 我們可以接受兩種類型中的其中一種: PropTypes.oneOfType([ PropTypes.string, PropTypes.number ]), 我們可以接受多個值中的一個: PropTypes.oneOf(['Test1', 'Test2']), 我們可以接受一個類的實例: PropTypes.instanceOf(Something) 我們可以接受任何React節點: PropTypes.node 甚至可以接受任何類型: PropTypes.any 數組有一種特殊的語法,我們可以使用它來接受特定類型的數組: PropTypes.arrayOf(PropTypes.string) 對於對象,我們可以通過以下方式組合對象的屬性: PropTypes.shape({ color: PropTypes.string, fontSize: PropTypes.number }) 要求屬性 將isRequired添加到任何PropTypes選項中,如果該屬性缺失,React將返回一個錯誤:...

如何在JavaScript中檢查變數值是否為數字

要如何確定變數值是否為數字呢? 我們有多種方式來檢查變數值是否為數字。 第一種方式是使用isNaN(),這是一個全域變數,在瀏覽器中被分配到window物件: const value = 2; isNaN(value); // false isNaN('test'); // true isNaN({}); // true isNaN(1.2); // false 如果isNaN()返回false,則該值是一個數字。 另一種方式是使用typeof運算子。如果將其應用於數字值,它將返回字串'number': typeof 1; // 'number' const value = 2; typeof value; // 'number' 因此,你可以像這樣進行條件檢查: const value = 2; if (typeof value === 'number') { //它是一個數字 }