问题标签 [javascript-namespaces]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 如何在 JavaScript 中声明命名空间?
如何在 JavaScript 中创建命名空间,以便我的对象和函数不会被其他同名对象和函数覆盖?我使用了以下内容:
有没有更优雅或更简洁的方式来做到这一点?
javascript - 这个“(function(){});”,括号内的函数,在javascript中是什么意思?
可能的重复:
这是什么意思?(函数 (x,y)){…}){a,b); 在 JavaScript
中,围绕 JavaScript 对象/函数/类声明的括号是什么意思?
大家好
我不知道以下内容是做什么的:
我的问题是:
- 将函数放在括号内是什么意思 .ie
(function(){});
? - 函数末尾的括号集有什么作用?
我通常在 jquery 代码和其他一些 javascript 库中看到这些。
javascript - 从我的命名空间中访问我的公共方法
我正在用 JavaScript 制作自己的命名空间...
我是这些高级 JavaScript 技术的新手,我正在尝试找出从我的命名空间中调用公共方法的最佳方法。似乎在我的公共方法this
中被设置为myNamespace
.
我应该调用像...这样的公共方法吗?
或者...
有什么区别吗?
javascript - Javascript 命名空间 - 这是一个好的模式吗?
目标...
- 从全局对象中删除变量、对象等。
- 消除碰撞的可能性。
首先,我实现了 Yahoo 命名空间代码(例如,注意我使用 ROOT 作为命名空间的根)...
现在我声明我的第一个命名空间......
我在这里要做的是保存我的 UI 所需的变量(在这种情况下是 UTC 的当前时间),以便它们不在全局对象上。我还想提供一些特定的功能。这应该在每个页面上都可用,无需任何实例化......
现在我想在我的命名空间结构中存储一个对象。但是,需要多次创建此对象。这里的目标是将其保留在我的结构中,但允许根据需要多次创建它。如下:
这是实例化对象的示例代码......
这是一个好的模式吗?
javascript - 如何使用带有命名空间的主干.js?
在过去的一个小时左右,我一直在尝试让命名空间与backbone.js 一起使用。
我尝试了所有方法。这是问题所在:
Backbone.Controller 希望通过构造函数(“新关键字”)进行初始化,否则将不会设置 Backbone.history。这是我试图放入命名空间的代码,例如“Site.Controllers”
每当我尝试将 MainController 放入某个命名空间时,backbone.js 都会抱怨 MainController 不是构造函数——当然是这样,因为似乎没有任何方法可以使用构造函数创建命名空间“树”。如果你们愿意,我可以列出我尝试过的所有方法,但它与上面提供的链接完全相同。我没有尝试将其放入闭包中,因为建议这样做很慢。
javascript - Javascript:如何清除非全局(封闭)setTimeout?
我正在努力成为一个好公民,并尽可能远离全球范围。有没有办法访问不在全局范围内的 setTimeout 变量?
所以,在这个例子中,有人会如何取消“计时器”?
我已经尝试过clearTimeout(myObject.timedAction.timer,1000);
(没有成功),不知道还有什么可以尝试的。
javascript - 将全局快捷变量分配给全局命名空间(对象文字)是不好的做法吗?
我对执行以下操作是否是一种好习惯有点困惑。
我有一个全局对象文字或命名空间,用于包含基本函数和变量。
在此我有一个 Page 属性,其中包含特定页面的所有变量和函数。我还在 Page 属性的一个属性中包含对元素 ID 的引用。这是因为有一个 ASP.NET 站点,我需要存储 .NET 生成的客户端 ID,以便我可以使用 jQuery 引用它们。
我的问题是我发现自己在我的页面函数中为这些文字分配了“快捷方式”变量,例如:
我的问题是:在我的母版页中创建一个“全局”变量是否是一个更好的主意,例如var _p = Base.Page;
这种可怕和糟糕的做法,我应该像上面那样继续吗?
(我的命名空间没有上面这么短的名称——它们只是为了说明。
我没有标记 ASP.NET 或 jQuery,因为我认为它们与这个问题没有直接关系。)
jquery - jQuery plugin looping through siblings
I'm new to writing jQuery plug-ins so I'm a little unsure how to do this. The plug-in is to display labels as tips inside text and password inputs. It's kind of simple - on element focus, the label is hidden. Also on document load it checks to see if the browser has auto-completed any field forms - if so, the label is hidden. The problem I am having is autocomplete of other fields. To solve this, I'm trying to bind a function to the onblur and keyup events of the element to loop through other form elements and work out whether they've been autocompleted.
Here is the annotated code.
It's triggered by doing this.
.txtbox is a class that I add to form text and password fields that I want to use this on.
I think it's a scope problem. The last $(this).each is the problem. Rather than looping through all elements with the .txtbox class, it's looping through the value of the input in which the event is taking place. I don't want to add the class name to the plug-in because it will add extra code and make it less flexible.
Any advice on this would be appreciated.
Cheers
Greg
javascript - JavaScript 命名空间和事件监听器中的“this”问题
首先,我试图在我的 JavaScript 程序中使用虚假命名空间,如下所示:
我并不热衷于使用this
来调用其他函数,但直到最近,它已经奏效了。但是,我已经为某些元素添加了事件侦听器,它们被解释this
为目标对象。
我知道我可以使用完整的命名空间而不是this
调用侦听Ish.Com.View.publicFunction2()
器(我需要在几乎每个函数调用中使用整个命名空间。
如何让命名空间与事件侦听器很好地配合使用?我也对实现命名空间的更好方法感兴趣,因为 usingthis.publicFunction2()
很笨重。
我对最佳实践非常感兴趣,并学习如何用 JavaScript 编写架构良好的应用程序。但是,除非我对 JavaScript 有更透彻的了解,否则框架是不可能的。
javascript - javascript 命名空间的首选技术
如果我不开始使用某种命名空间技术,我的代码将会变得一团糟。我对大型 javascript 项目的编程相对较新,但在 C++/java/python 等系统编程方面有丰富的经验。
基本上,我试图确定创建 javascript 命名空间的首选方法,以及每种方法的优缺点。
例如,我可以使用以下三种方法之一:
或者
或者
显然还有其他方法可以做到这一点,但这些是我看到和想到的第一个。谁能说有一种“最好”的技术,或者至少指出我可以从中评估哪些最适合我的一些优点/缺点?