jjzjj

function

全部标签

javascript - 在 JavaScript 中访问外部作用域

所以我在这里得到了这个JS代码,我试图从成功和错误回调中设置obj,但显然toLinkInfo函数范围不是那些的父范围?无论如何,我总是从这个函数中得到空值。我尝试了很多东西但无法让它工作,我想我太习惯了C和friend:)我怎样才能让它工作?LinkInfoGrabber.prototype.toLinkInfo=function(){varobj=null;$.ajax({url:this.getRequestUrl(),success:function(raw){obj=newLinkInfo(raw);},error:function(jqXHR,textStatus,erro

javascript - 从异步函数获取数据

我有这个代码:functiongetData(){db.transaction(function(tx){tx.executeSql('SELECT*fromq',[],function(tx,result){varq=[];for(vari=0;i它没有按预期工作(它不返回任何东西)。假设发生了,因为db.transaction工作异步,但我正在使用回调返回数据。有人可以解释为什么它不起作用以及如何解决这个问题吗? 最佳答案 执行此操作的标准方法是包含您自己的回调,如下所示:functiongetData(callback){db

javascript - Javascript 的 Function.toString() 的逆运算

对于Javascript应用程序,我需要能够让用户保存对象的状态。这涉及保存一组以前动态创建或通过GUI创建的自定义函数,并在以后加载这些存储的函数。本质上,我需要序列化和反序列化函数。现在我通过使用Function对象的.toString()方法实现序列化部分:func.toString().replace('"','\"').replace(/(\r)/g,'').replace(/(\n)/g,'').replace(/(\t)/g,'')这给了我这样美丽的“序列化”函数(注意该函数未命名):"function(someParameter){this.someFunctionNa

javascript - 如何扩展一个javascript对象?

我用babel对象做了一个简单的例子来说明我的问题:functionbabel(){this.english={hello:function(){alert('hello');},goodbye:function(){alert('goodbye');}teeshirt:function(){alert('T-shirt');}}}现在,我想扩展这个对象:babel.prototype.french={bonjour:function(){alert('bonjour');},aurevoir:function(){alert('aurevoir');}}但是如果我需要使用之前定义的现

javascript - 模块模式中的构造函数

在javascript中使用模块模式时,应该如何定义构造函数(如果有的话)。我希望我的构造函数适合标准模块模式而不是全局的。为什么这样的东西不起作用,它完全是胡说八道吗?varHOUSE=function(){return{Person:function(){varself=this;self.name="john";functionname(){returnself.name;}}};}();varme=newHOUSE.Person();alert(me.name()); 最佳答案 您的代码几乎没问题。但是,函数name()不是

javascript - 在javascript中为对象创建函数

据我所知,在javascript中为对象创建函数主要有两种方法。它们是:方法A,在构造函数中进行:functionMyObject(){this.myFunc1=function(){...}this.myFunc2=function(){...}...}方法B,添加到原型(prototype)中:functionMyObject(){...}MyObject.prototype.myFunc1=function(){...}MyObject.prototype.myFunc2=function(){....}显然如果你这样做了:MyObject.myFunc3=function(){

javascript - 视频播放完成后如何显示灯箱?

我有一个youtube视频。我想在停止播放时显示一个灯箱。我需要使用javascript/jQuery或PHP来完成此操作。Ajax也很好。我寻找了一种解决方案,但没有找到有效的解决方案。 最佳答案 如果你可以使用youtubeapi,那么像这样的东西应该可以工作:$(document).ready(function(){varplayer;functiononYouTubePlayerAPIReady(){player=newYT.Player('player',{height:'390',width:'640',videoId:

javascript - 使用 d3.js 和给定的 json 文件结构进行捆绑布局

我有一个包含如下元素的json文件:[{"name":"ManuelJose","ttags":["vivant","designer","artista","empreendedor"]}]我正在尝试使用此结构获取节点和边来完成如下图:(图取自d3.jsdocumentation)我的json文件中的name和ttags都是指节点,ttags实际上是节点与其他节点之间的链接。但是,我不明白如何使用这个库d3和更高版本的json文件来创建这个图表。d3.json("/data/tedxufrj.json",function(classes){varnodes=cluster.nodes

javascript - 使用 null 检查传递的参数 - JavaScript

这里举个例子函数:functiona(b){console.log(b!=null?1:2);}该代码工作正常,如果传递参数则打印1,否则打印2。但是,JSLint给了我一个警告,告诉我改为使用严格的等式,即!==。无论是否传递参数,函数在使用!==时都会打印1。所以我的问题是,检查参数是否已传递的最佳方法是什么?我不想使用arguments.length,或者根本不想使用arguments对象。我试过用这个:functiona(b){console.log(typeof(b)!=="undefined"?1:2);}^这似乎可行,但这是最好的方法吗? 最佳

javascript - JavaScript 中的深度嵌套函数

我无法为我一生的挚爱找到一个合适的例子来说明如何做到这一点,或者即使这是可能的。根据我对示例片段的拼凑理解,我得出了以下结构vart=function(){this.nestedOne=function(){this.nest=function(){alert("here");}}}t.nestedOne.nest();然而,这是行不通的(很明显)。如果有人能指出我正确的方向,我将不胜感激! 最佳答案 这很简单:vart={nestedOne:{nest:function(){alert('here');}}};否则您的代码没有意义