作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试创建类似于 d3 的东西(例如:d3.select()),但更简单,每次调用命名空间函数时我都需要一个新实例。这可能吗?或者我的做法是错误的吗?
var dom = new function () {
var Element = null;
this.select = function (query) {
Element = document.querySelector(query);
return this;
};
this.append = function (elem) {
Element.append(elem);
return this;
};
};
预期用途
var bodyelement = dom.select("body");
var p = dom.select("p");
最佳答案
每次使用 dom
对象时,您都需要运行一些代码。因此,如果 dom 对象是一个函数,您可以调用它来获取一个新实例。
var dom = function () {
var Element = null;
var newdom = {};
newdom.select = function (query) {
Element = document.querySelector(query);
return this;
};
newdom.append = function (elem) {
Element.append(elem);
return this;
};
return newdom;
};
console.log(dom() === dom(), "(false means the instances are different)");
关于javascript - 每次调用时都有新实例的命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41209862/
我正在使用 Apache wicket 创建我的第一个应用程序,但遇到了一个问题。用户通过身份验证方法登录后,我有一个为该用户创建的新 session 。现在,如果我想只为该用户存储数据,我将如何使用
我是一名优秀的程序员,十分优秀!