草庐IT

Some_Func_Return_A_Rect_Object

全部标签

object - 编写一个 javascript 库

我想写一个JS库,然后这样处理:varc1=Module.Class();c1.init();varc1=Module.Class();c2.init();当然,c1和c2不能共享相同的变量。我想我知道如何处理对象,它是:varModule={Class={init=function(){...}}}但问题是如果我这样写,我不能有多个Class实例。所以我试图通过功能实现相同的目标,但我认为我做的不对。(function(){varModule;window.Module=Module={};functionClass(i){//Howcan"this"refertoClassinst

javascript - onsubmit ="return false"对 Internet Explorer 7/8 没有影响(仍然提交表单)

我有一个表单,将由标签的“onsubmit”中触发的javascript代码提交。适用于所有浏览器-但不适用于IE7/IE8。我能做什么?[...] 最佳答案 我要挑剔这个。如果你想处理表单提交,这就是提交的目的。如果用户在您的某个字段中按下回车键,您的onclick处理程序将被完全避免。这是一个以非侵入性方式执行此操作的基本示例。document.myform.onsubmit=function(){alert('handled');returnfalse;}这可以通过jQuery变得更简单,同样的形式......$("form[

javascript - 将函数调用保存到变量时为 "object is not a function"

我试图通过将函数缓存到变量来使我的代码更小。例如:functiontest(){vara=Array.prototype.slice,b=a.call(arguments);//DosomethingsetTimeout(function(){varc=a.call(arguments);//Dosomethingelse},200);}所以我可以不调用Array.prototype.slice.call(arguments),而是调用a.call(arguments);。我试图通过缓存Array.prototype.slice.call使它更小,但那不起作用。functiontest

javascript - 我收到这个错误! [ 'return' 函数外语句]

我正在为客户端创建一个表单验证器,只在InternetExplorer(Explorer)7/8中遇到了这个奇怪的错误....'return'outsideoffunction,line1,char1当然,第1行没有任何代码。这是一个简单的注释语句。并且没有任何问题。所以我知道这只是一个调试误导。我一直在努力了解这里可能出了什么问题......我已经排除了显而易见的情况:循环中的return语句、单个函数中的太多return语句以及实际上在合法函数定义之外的任何返回。这是什么原因? 最佳答案 问题是我使用return语句来覆盖我的表

javascript - 帮助我理解 <script src ="some.js?param1=one;param2=two"/>

我有时会在网页上观察到如下所示的block。所以我很想知道这到底是做什么的?或者为什么要这样写?我只能看出背后的一些意图它不是页面URL(我的意思是.aspx/.php/.jsp等)所以它不是黑客代码,用户可以添加这样的代码来传递数据而不会引起用户注意,因为它的标签不会呈现UI或实现旧类型的AJAX替代方案如果用户不希望缓存JS文件(任何其他资源,如图像),这种URL参数很有用。这是管理缓存的快速方法但我无法弄清楚以下内容看起来像页面URL参数,但这些参数在JavaScript文件中是否可读并且有一些额外的实用程序?这些参数在这里有什么额外的作用吗?可以/正在使用这样的代码的其他可能的

javascript - 有什么理由在 JavaScript 中使用 Object.create() 或 new 吗?

到目前为止,我一直在JavaScript中使用new关键字。我一直在阅读有关Object.create的内容,我想知道我是否应该改用它。我不太明白的是我经常需要运行构造代码,所以我根本看不到Object.create将如何工作,因为它不会触发任何函数运行。谁能告诉我,在什么情况下我应该使用Object.create而不是new? 最佳答案 到目前为止,如果要创建一个对象,只能使用字面量:varobj={};或Object构造函数。varobj=Object();但是这些方法都不允许您指定所创建对象的原型(prototype)。这就是

javascript - "return function() { ... }"在 JavaScript 中有什么作用?

最近我看到了这段JavaScript代码,但是一直无法理解它在做什么。varf=function(a){returnfunction(){alert(a());};};f(function(){return"HelloWorld";})();请解释这完成了什么! 最佳答案 它执行f返回的函数。f返回一个调用警报的函数,该警报显示您作为参数提供给f的函数的输出。编辑:只需替换一些部件以使其更美观,您就会看到自己:varf=function(a){varoutput=a();varalertCaller=function(){alert

javascript - ES5 中的 Object.defineProperty?

我看到了有关使枚举可配置的"new"Object.create的帖子。但是,它依赖于Object.defineProperty方法。我找不到此方法的跨浏览器实现。我们是否还在为旧的Object.create编写代码?我无法编写在IE6/7中无法运行的内容。 最佳答案 在ECMAScript3环境中,您无法通过ECMAScript5Object.create方法模拟一些事情。如您所见,属性参数会给您带来问题,因为在基于E3的实现中,没有办法更改属性属性。@Raynos提到的Object.defineProperty方法适用于IE8,但

javascript - Object.assign 和 object spread 的区别

这个问题在这里已经有了答案:Objectspreadvs.Object.assign(16个答案)关闭6年前。拥有varobj={a:1,b:2};有什么区别obj=Object.assign(obj,{c:3});和obj={...obj,c:3};

javascript - `return await` 是否存在性能问题?

我看到有一个eslintrule,no-return-await,fordisallowingreturnawait.在规则的描述中,它指出returnawait添加了“在总体Promise解决或拒绝之前的额外时间”。但是,当我查看MDNasyncfunctiondocs,“简单示例”显示了一个包含returnawait的示例,但没有说明这可能是性能问题的原因。returnawait是否如eslint文档所建议的那样是一个实际的性能问题?如果是,怎么办? 最佳答案 不,没有任何性能问题。这只是一个不必要的额外操作。执行可能需要更长的