javascript - 我们如何使 Javascript 数组不可变,就像我们拥有 Object.freeze() 方法的对象一样?
问题描述
例如:
const arr = [1,2,3];
arr.push(4); //4
console.log(arr) //[1,2,3,4]
我希望这个数组是不可变的。它不应允许推送或添加/删除 arr 值。
解决方案
Object.freeze
在数组上工作得很好,因为数组也是对象:
const arr = [1,2,3];
Object.freeze(arr);
arr.push(4); // attempting to push throws
推荐阅读
- python - 重命名 Django 用户字段
- github - Gradle maven-publish 插件在子项目上失败
- ios - 没有新的应用程序二进制提交。新的应用内购买产品卡在“等待审核”?
- java - 如何使用 aws-java-sdk 2.0 删除非空 S3 存储桶
- python - 为re.sub替换参数转义Python正则表达式字符串?
- javascript - 单击按钮后如何禁用拖动功能
- .net - vs2017中的错误MSB4018:“SignFile”任务意外失败
- xcode - 尝试从 Xcode 推送到 GitHub 时出现卷曲错误
- gpu - 如何计算Windows平台指定进程的GPU利用率?
- cordova - 科尔多瓦构建 ios 但“无法读取未定义的属性 'toLowerCase' 中的错误”