js中如何定义 常量?

JavaScript013

js中如何定义 常量?,第1张

1. 定义一些常量,使用闭包,匿名函数实现常量的定义。

例如:

var Class = (function() {

var UPPER_BOUND = 100//定义了常量

var Test={}

// 定义了一个静态方法 获取常量的方法

Test.getUPPER_BOUND=function() {

return UPPER_BOUND

}

return Test

})()

用法:

var k=Class.getUPPER_BOUND()

alert(k)//

2.多个常量的情况下:

var Class = (function() {

// Private static attributes.

var constants = {//定义了两个常量

UPPER_BOUND: 100,

LOWER_BOUND: -100

}

var Test={}

// 定义了一个静态方法

Test.getConstant=function(name){//获取常量的方法

return constants[name]

}

return Test

})()

用法:

var k=Class.getConstant('UPPER_BOUND')

alert(k)

for...in每次循环中的value并不是同一个value,

for(const value in iterable){

console.log(value)

}

相当于每次都用const重新定义了一个新的value存储iterable中的值,并打印到控制台上;

如果你这样写就会报错,告知你const不可以修改

const value = 1//const定义常量必须有默认值

for(value in iterable){

}

常规数组: 数组元素内容是一种类型的元素,如const arr = [1,2,3,4],在存储空间是连续内存的

JS数组: 数组元素内容不是同一种类型的元素,如const arr = ['haha', 1, {a:1}],则在存储上是一段非连续空间。此时,JS 数组不再具有数组的特征,其底层其实是由链表来实现的

总结

链表的插入/删除效率较高,而访问效率较低;

数组的访问效率较高,而插入效率较低