相关疑难解决方法(0)

如何使用const关键字创建Javascript常量作为对象的属性?

为什么不能将常量设置为变量本身的对象的属性?

const a  = 'constant' // all is well
// set constant property of variable object
const window.b = 'constant' // throws Exception
// OR
var App = {};  // want to be able to extend
const App.goldenRatio= 1.6180339887  // throws Exception
Run Code Online (Sandbox Code Playgroud)

为什么通过引用传递的常数突然变得可变?编辑:我知道应用程序不会(或者更确切地说......)不可变; 这只是一个观察......

(function() {
    const App;
    // bunch of code
    window.com_namespace = App;
}());
window.com_namespace; // App
window.com_namespace = 'something else';
window.com_namespace; // 'something else'
Run Code Online (Sandbox Code Playgroud)

如何使用这些限制来构建一个包含常量的组织良好,可扩展,面向对象的单一命名空间的库?

编辑:我相信zi42,但我只想问为什么

javascript const properties object

42
推荐指数
4
解决办法
4万
查看次数

何时在JavaScript中使用const与对象?

我最近阅读了关于ES6 const关键字的内容,我可以理解它在这样的事情时的重要性:

(function(){
    const PI = 3.14;
    PI = 3.15; //  Uncaught TypeError: Assignment to constant variable
})();
Run Code Online (Sandbox Code Playgroud)

所以,没有人可以改变我的PI变量.

我的误解是我不明白在哪种情况下使用const对象是有意义的(除了阻止人们这样做myObj = newValue;).

(function(){
    const obj = {a:1 ,b: 2, c:3};
    //obj = {x:7 , y:8, z: 9}
    //This is good
    //TypeError: Assignment to constant variable.

    obj.a=7; obj.b=8 ; obj.c=9;
    console.log(obj); //outputs: {a: 7, b: 8, c: 9}
})();
Run Code Online (Sandbox Code Playgroud)

因此,当声明一个对象时:我该说什么时候:现在我必须声明我的对象const

javascript

29
推荐指数
3
解决办法
2万
查看次数

对象应该声明为const还是让?

无论是声明对象const还是let在ES2015中,都不会影响对其属性的赋值:

> let a = {}
undefined
> const b = {}
undefined
> a.y = 3
3
> b.y = 3
3
> a
{ y: 3 }
> b
{ y: 3 }
Run Code Online (Sandbox Code Playgroud)

是否有充分的理由选择一种形式的声明而不是另一种形式?

javascript ecmascript-6

4
推荐指数
1
解决办法
1709
查看次数

Javascript:将对象分配给 const 变量与 let 变量

这可能是一个愚蠢的问题,但我想看看在分配给 CONST 或 LET 变量方面是否有任何最佳实践。我知道 CONST 变量一旦声明就不能重新分配,但我注意到通过将对象分配给 CONST 变量,您可以更新对象的内容。

const person = {
  name: "John"
}
console.log(person.name) => //"John"

person.name = "Kim"
console.log(person.name) => //"Kim"
Run Code Online (Sandbox Code Playgroud)

这会被视为不好的做法吗?如果不是,为什么不使用 LET 变量呢?

javascript constants

4
推荐指数
1
解决办法
1323
查看次数

标签 统计

javascript ×4

const ×1

constants ×1

ecmascript-6 ×1

object ×1

properties ×1