草庐IT

new-expression

全部标签

javascript - 谷歌地图脚本打破 Safari TypeError : Result of expression 'document.body' [null] is not an object

我在我的网页中显示谷歌地图,它在除Safari之外的所有浏览器中都能正常工作。Safri使页面变白并且JS错误显示:TypeError:Resultofexpression'document.body'[null]isnotanobject.maps.google.com/maps/api/js?sensor=true®ion=nz&async=2&callback=initializeConfigMap:11TypeError:Resultofexpression'a'[null]isnotanobject.maps.gstatic.com/intl/en_us/mapfile

javascript - express.js(或类似)应用程序的异步初始化

考虑一个示例:我有以下express.js应用程序(请参见下面的代码片段)。我希望在整个应用程序生命周期内与数据库建立一个持久连接,并与我自己的服务建立一个持久连接(这需要异步调用才能启动)。还有一些入口点,即不仅可以通过HTTP协议(protocol)访问我的应用程序。当然,我想避免服务初始化代码重复,可能会有多个这样的异步初始化服务。/*app.js*/varapp=require('express')();//setviews,useroutes,etc.vardb=require('monk/mongoose/etc')(...);//happily,usuallyit'sas

javascript - Typescript 中的工厂函数使用和不使用 new 关键字声明文件

以下代码将在ES5中创建一个工厂函数:functionMyClass(val){if(!(thisinstanceofMyClass)){returnnewMyClass(val);}this.val=val;}可以使用或不使用new关键字调用此函数:vara=newMyClass(5);varb=MyClass(5);这在Typescript中工作正常,但是我不知道如何使用merging创建声明文件描述了这两种行为。有办法做到这一点吗? 最佳答案 interfaceMyClass{val:{};}interfaceMyClassC

javascript - node.js:socket.io 与 express.static

我正在运行以下server.js:module.exports=server;varexpress=require('express');varfs=require('fs');varserver=express.createServer();varport=58000;server.listen(port);vario=require('socket.io').listen(server);server.use(express.static('/',__dirname+'/../public'));server.use(express.logger());io.on('connect

javascript - .click() 事件时 'Open in new tab/window'

当我使用.click()时在上标记,事件仅在我单击该元素时有效。否则,如果用户右键单击>在新窗口中打开或在新选项卡中打开,它不会触发click()。事件。所以,我的问题是……如何触发click()当用户右键单击>在新选项卡/窗口中打开时发生的事件?这是HTML:ClickMe这是Js:$("a").click(function(){alert('Youclickedme!');}); 最佳答案 您可以尝试这段代码,但请记住更改UI不是一个好主意:varaddEvent=(document.addEventListener)?func

javascript - IE new Date(string) 到底在做什么?

好的,所以QA给了我这个错误,如果日期有一个字符开始日期的月、日或年部分(格式为MM/dd/yyyy),那么(仅在IE中)它会解析日期但是改变它..所以四处挖掘,果然它非常奇怪..这是我在IE中谈论的一些示例代码$("#dates").append("04/30/2012="+newDate("04/30/2012").toString()+"");$("#dates").append("a04/30/2012="+newDate("a04/30/2012").toString()+"");$("#dates").append("b04/30/2012="+newDate("b04/3

javascript - 选择 2 : Update option after selecting new tag

我实现了一个标签系统,您可以在其中选择现有标签或添加新标签。选择新标签后,它将使用AJAX调用保留。为了实现这一点,我使用回调createTag和事件select2:select。因为我喜欢只在标记被选中时才创建标记,所以如果事件select2:select被触发,我会为此执行AJAX调用。问题是我需要使用从将新标签持久保存到数据库中获得的ID更新已创建的select2选项。最干净的解决方案是什么?这是我所拥有的:$('select.tags').select2({tags:true,ajax:{url:'{{path('tag_auto_complete')}}',processRe

javascript - 如何正确设置 Node、Express 和 Angular2

我正在尝试使用Node、Express、Angular2(数据库、MongoDB或SQL)设置工作区但我不确定如何正确设置组合。目前我的文件结构是这样的,打算把front-end放在public文件夹下。──package.json├──public├──routes│  └──test.js├──server.js└──views到目前为止,我的server.js看起来像这样varexpress=require('express');varmysql=require('mysql');varcookieParser=require('cookie-parser');varbodyPa

javascript - 为什么 Node Object.create(too) 比 new Foo() 慢很多?

我在JS中使用回溯编写了一个简单的数独求解器。为了成为“纯粹的功能”,我所有的9x9拼图数组都是不可变的,因此每当插入一个新数字时都会创建一个新数组。版本1使用newSudokuPuzzle在第一个版本中,我使用newPuzzle(puz​​zle)方法来克隆对象:functionSudokuPuzzle(obj){if(objinstanceofSudokuPuzzle){this.grid=obj.grid.slice(0);//copyarray}//...}然后每当我更新数组时,我都会执行以下操作:SudokuPuzzle.prototype.update=function(r

javascript - 无法访问 Express/NodeJS 中的 req.session 变量

我见过这个问题的许多变体,但似乎没有一个能解决我的问题。我正在尝试使用Express设置一个Node.js服务器。这是我的服务器配置:varexpress=require('express'),RedisStore=require('connect-redis')(express);varapp=express();app.use(express.urlencoded());app.use(express.json());app.use(express.cookieParser());app.use(express.session({store:newRedisStore(),secr