![](/img/trans.png)
[英]JAVASCRIPT when and why i should use const instead of let for var declaration
[英]In javascript should I use const instead of var whenever possible?
如果創建對象的引用,並且引用不會改變(即使對象會),那么使用const而不是var更好嗎?
例如:
const moment = require('moment')
exports.getQuotation = function(value) {
const quotation = {};
quotation.value = value;
quotation.expiryDate = moment().add(7, 'days');
// Do some other stuff with quotation perhaps
return quotation;
};
您可以使用const,但必須在--harmony
上運行節點
node app.js --harmony
您還必須設置"use strict"
,否則您將遇到運行時執行問題:
exports.getQuotation = function(value) {
"use strict";
const I_AM_CONSTANT = {};
let quotation = {};
...
除此之外,是的,如果你在--harmony
上運行節點,從語義上來說,使用const
作為常量會更有意義。 對於實際變量,您應該使用let
而不是var,因為let
只定義范圍中的變量(避免提升問題)
如果您查看MDN,作為參考,您可以發現它是ES6提案的一部分實驗技術。 它的瀏覽器支持有限。
來自MDN的const的參考
這是一項實驗技術,是Harmony(ECMAScript 6)提案的一部分。 由於此技術的規范尚未穩定,請檢查兼容性表以了解各種瀏覽器的用法。 另請注意,隨着規范的變化,實驗技術的語法和行為可能會在未來版本的瀏覽器中發生變化。
所以這回答了你是否應該隨處使用。 :)
此外,如果要在不允許更改的對象中創建屬性,則應檢查Object.defineProperties()
和writable
屬性的使用。
const用於變量常量,即一旦聲明,它的值不應該改變,而var
可以按照意願改變。
使用const
和var
完全取決於您的意願。 對我而言如下
記住它,重新聲明const
會立即拋出錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.