如何在 JavaScript 中將數字格式化為貨幣值

透過 JavaScript 的國際化 API,了解如何將數字轉換為貨幣值。 假設你有一個數字為 10,代表某物品的價格。 你想將它轉換為 $10.00。 然而,如果數字超過3位數,則應以不同方式顯示,例如 1000 應該顯示為 $1,000.00。 然而,這僅是美元的表示方法。 不同的國家有不同的值表示習慣。 JavaScript 使用 ECMAScript 國際化 API 讓我們能夠輕鬆達成這一目標,這是一個相對較新的瀏覽器 API,提供了許多國際化功能,例如日期和時間格式化。 該 API 目前得到了很好的支援: const formatter = new Intl.NumberFormat('en-US', { style: 'currency', currency: 'USD', minimumFractionDigits: 2 }) formatter.format(1000) // "$1,000.00" formatter.format(10) // "$10.00" formatter.format(123233000) // "$123,233,000.00" minimumFractionDigits 屬性設定小數部分的最少位數為2位。您可以在 NumberFormat MDN 頁面 中檢查可用的其他參數。 以下是一個創建意大利國家的歐元貨幣數字格式化器的示例: const formatter = new Intl.NumberFormat('it-IT', { style: 'currency', currency: 'EUR' })

如何在 JavaScript 中將陣列分成兩半

你如何將一個陣列平均分成兩半呢? 使用陣列的 slice() 方法: const list = [1, 2, 3, 4, 5, 6] const half = Math.ceil(list.length / 2); const firstHalf = list.slice(0, half) const secondHalf = list.slice(half) 如果陣列中的元素數量是偶數,結果會平均分成兩半。 如果元素數量是奇數,例如: [1, 2, 3, 4, 5] 結果會是: [ 1, 2, 3 ] [ 4, 5 ]

如何在 JavaScript 中檢查兩個日期是否是同一天

您如何檢測 JavaScript 中的日期對象實例是否引用了另一個日期對象的同一天? JavaScript 在其標準庫中沒有提供此功能,但您可以使用以下方法來實現: getDate() 返回日期的日期 getMonth() 返回日期的月份(從 0 開始,一月為 0) getFullYear() 返回日期的四位數年份 這是一個簡單的函數,您可以複製/粘貼來進行檢查: const datesAreOnSameDay = (first, second) => first.getFullYear() === second.getFullYear() && first.getMonth() === second.getMonth() && first.getDate() === second.getDate(); 範例用法: datesAreOnSameDay(new Date(), new Date()) // 返回 true

如何在 JavaScript 中檢查字串是否包含子字串

JavaScript 提供了很多方法可以檢查字串是否包含子字串。在這篇文章中,我們將學習到一個最常見、最推薦的做法,同時也會介紹其他一些方法。 檢查字串是否包含子字串是任何程式語言中最常見的任務之一。 JavaScript 提供了不同的方法來執行這個操作。 最簡單、也是最推薦的方法是使用字串的 includes() 方法: 'a nice string'.includes('nice') //true 這個方法在 ES6/ES2015 中被引入。 除了 Internet Explorer 外,現代瀏覽器都支援這個方法: 如果要在所有瀏覽器上使用這個方法,可以使用 Polyfill.io 或其他專用的 polyfill。 includes() 方法還接受可選的第二個參數,即起始搜尋的位置: 'a nice string'.includes('nice') //true 'a nice string'.includes('nice', 3) //false 'a nice string'.includes('nice', 2) //true ES6 之前的 includes() 替代方法:indexOf() 在 ES6 之前,檢查字串是否包含子字串的常見方法是使用 indexOf(),這是一個字串方法,如果字串中不包含指定子字串,則返回 -1。如果找到子字串,則返回子字串的起始索引。 和 includes() 一樣,第二個參數可以指定起始搜尋的位置: 'a nice string'.indexOf('nice') !== -1 //true 'a nice string'.indexOf('nice', 3) !== -1 //false 'a nice string'.indexOf('nice', 2) !== -1 //true

如何在 JavaScript 中檢查日期是否過去的一天

給定一個 JavaScript 日期,如何檢查它是否參考過去的某一天? 我遇到了這個問題:我想要檢查一個日期是否在參考的日期之前。 僅僅使用 getTime() 進行比較是不夠的,因為日期可能有不同的時間。 我最終使用了這個函數: const firstDateIsPastDayComparedToSecond = (firstDate, secondDate) => { if (firstDate.setHours(0,0,0,0) - secondDate.setHours(0,0,0,0) >= 0) { //第一個日期在未來,或者就是今天 return false; } return true; } 我使用 setHours() 來確保我們在同一個時間(00:00:00)比較兩個日期。 這是一個更簡潔、省略了內部返回部分的相同函數的版本: const firstDateIsPastDayComparedToSecond = (firstDate, secondDate) => firstDate.setHours(0,0,0,0) - secondDate.setHours(0,0,0,0) < 0; 以下是如何使用這個函數的簡單示例,將昨天與今天進行比較: const today = new Date(); const yesterday = new Date(today); yesterday.setDate(yesterday.getDate() - 1); firstDateIsPastDayComparedToSecond(yesterday, today); //true firstDateIsPastDayComparedToSecond(today, yesterday); //false

如何在 JavaScript 中獲取元素的滾動位置

當在瀏覽器中建立用戶界面時,您可能會遇到一個可以滾動的元素,了解它目前的水平和垂直滾動位置是常見的需求。 那麼,該如何做到這點呢? 一旦獲取了該元素,您可以檢查其 scrollLeft 和 scrollTop 屬性。 0, 0 的位置始終位於左上角,因此任何滾動都是相對於該位置的。 示例: const container = document.querySelector('.container') container.scrollTop container.scrollLeft 這些屬性是可讀寫的,因此您還可以設置滾動位置: const container = document.querySelector('.container') container.scrollTop = 1000 container.scrollLeft = 1000

如何在 JavaScript 中生成兩個數字之間的隨機數

在 JavaScript 中,最簡單的方法是使用 Math.floor() 和 Math.random() 結合來隨機選擇一個數字。 以下是一行簡單的代碼,可以返回一個介於 1 和 6(包括 1 和 6)之間的數字: Math.floor(Math.random() * 6 + 1) 這裡有 6 個可能的結果:1、2、3、4、5、6。

如何在 JavaScript 中确定日期是否是今天

了解如何判断一个 JavaScript Date 对象实例是否代表了“今天”这个日期时间。 给定一个 Date 实例,我们可以使用 getDate()、getMonth() 和 getFullYear() 方法来获取日期的日、月和年,并将它们与今天进行比较,可以通过 new Date() 获取今天的日期时间。 下面是一个小函数,如果参数是今天,则返回 true。 const isToday = (someDate) => { const today = new Date(); return ( someDate.getDate() === today.getDate() && someDate.getMonth() === today.getMonth() && someDate.getFullYear() === today.getFullYear() ); }; 你可以这样使用它: const today = isToday(myDate); 如果需要,可以查看JavaScript 日期指南,了解更多如何处理 Date 对象的方法。

如何在 JavaScript 中給數字添加前導零

我需要在數字小於 10 的時候添加前導零,這樣在屏幕上顯示時,不會顯示 “9” 而是 “09”。 使用案例是我想顯示視頻的時長,5:04 比 5:4 更合乎邏輯,能更清晰地表達一個視頻是 5 分鐘 4 秒。 以下是實現的方法: Math.floor(mynumber) .toString() .padStart(2, '0') 這個方法是使用 JavaScript 中內置的 Math 庫 來實現的。

如何在 JavaScript 中获取当前 URL

了解 JavaScript 提供的获取当前在浏览器中打开的 URL 的方法 要使用 JavaScript 获取在浏览器中打开的页面的当前 URL,您可以依赖浏览器在 window 对象上公开的 location 属性: window.location 由于 window 是浏览器中的全局对象,因此可以将该属性引用为 location 这是一个 Location 对象,它本身具有许多属性: 当前页面的 URL 在 location.href 中公开。location 的其他属性提供了有用的信息: 代码 描述 location.hostname 主机名 location.origin 源 location.hash 哈希值,即跟在 # 符号后面的部分 location.pathname 路径 location.port 端口 location.protocol 协议 location.search 查询字符串