javascript - 设置 Javascript 对象属性的默认值

标签 javascript

有没有办法设置 Javascript 对象的默认属性:

let emptyObj = {};
// do some magic
emptyObj.nonExistingAttribute // => defaultValue

最佳答案

自从我几年前提出这个问题以来,事情进展顺利。

代理是 ES6 的一部分。以下示例适用于 Chrome, Firefox, Safari and Edge :

let handler = {
  get: function(target, name) {
    return target.hasOwnProperty(name) ? target[name] : 42;
  }
};

let emptyObj = {};
let p = new Proxy(emptyObj, handler);

p.answerToTheUltimateQuestionOfLife; //=> 42

阅读更多 Mozilla's documentation on Proxies .

关于javascript - 设置 Javascript 对象属性的默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6600868/

相关文章:

c# - 将Matlab模糊逻辑工具箱fis文件转换为c#/c++/javascript

javascript - 解决首屏内容中的 JavaScript 和 CSS 的选项

javascript - 如何在谷歌图表中动态编辑表格?

javascript - Recoil atom 的默认值可以是对象吗?

javascript - 在 Handlebars "(generated application controller)"helper 中显示 "#each"而不是值内容

javascript - 离线 DynamoDB + Serverless + Lambda ResourceNotFoundException

javascript - 在 mozilla Addon Builder 中重定向 http 请求 URI

javascript - 视口(viewport)大小的 div 网格

javascript - 如何获取 Backbone 集合并传递给 View ?

javascript - 使用 node.js 读取/写入类型化数组到文件