草庐IT

Object方法

全部标签

javascript - 访问使用 OBJMTLLoader 加载的 Object3D

我正在构建一个允许用户以obj/mtl格式上传3D模型的应用程序。管理员在我们的查看器中显示加载对象的预览。我想为用户提供控件来设置加载对象的初始y位置和相机的初始z位置。我已经解决了相机部分,但我在y位置上没有运气。我的代码:varobj3d;loader.load(model_obj,model_mtl,function(object){object.position.y=y_init;scene.add(object);render();obj3d=object;$('#initial_y').change(function(){obj3d.position.y=$(this).

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 - 从 Vue.js 中的父组件执行子方法

目前,我有一个Vue.js组件,其中包含其他组件的列表。我知道使用vue的常见方式是将数据传递给child,并从child向parent发送事件。但是,在这种情况下,我想在单击父中的按钮时在子组件中执行一个方法。哪种方法最好? 最佳答案 一个建议的方法是使用globaleventhub.这允许有权访问集线器的任何组件之间进行通信。这是一个示例,展示了如何使用事件中心来触发子组件上的方法。vareventHub=newVue();Vue.component('child-component',{template:"The'clicke

javascript - 有什么方法可以将 referer 设置为 youtube-iframe-api 吗?

我正在开发一个Chrome扩展,我正在使用youtube-iframe-api。通过以下代码制作的播放器可以播放任何视频,除了一些有限的(?)视频,例如vevo。functiononYouTubeIframeAPIReady(){player=newYT.Player('player',{height:'300px',width:'800px',videoId:'RhU9MZ98jxo',playerVars:{'origin':'https://www.youtube.com','wmode':'opaque'},events:{'onReady':onPlayerReady,'on

javascript - 删除对对象方法的公共(public)访问

我想获取一个对象并从中删除一些方法。即我内部有一个带有getter/setter的对象,我想让外部用户访问它。我不希望他们有权访问setter函数。我不想通过从中删除方法来更改原始对象引用,而是创建一个新的对象引用,该对象引用指向同一个对象但其上的方法较少。我该怎么做?这是设计模式吗?是否有针对此类问题的众所周知的解决方案?我有这个函数的实现varreadOnly=function(obj,publicData){//createanewobjectsothatobjisn'teffectedvarobject=newobj.constructor;//removeallitspubl

javascript - 如何使用 DOM 方法可靠地对数组进行子排序?

预先注意:我在这里没有使用jQuery或其他库,因为我想了解我写的内容以及它为什么有效(或无效),所以请不要用库或库插件来回答这个问题。我并不反对库,但对于这个项目而言,它们不利于我的编程目标。也就是说……在http://meyerweb.com/eric/css/colors/我使用自己编写的DOM函数添加了一些列排序。问题是,虽然它非常适合按字母顺序排列字符串的简单情况,但当我尝试对多个数字项进行排序时,浏览器之间的结果不一致——实际上,当我尝试对两个子排序进行排序时。例如,如果您在OSX上的Safari或Firefox中单击“DecimalRGB”几次,您将获得我想要的结果。在C

javascript - new Array() 与 Object.create(Array.prototype)

天真的困惑:vararr1=newArray();vararr2=Object.create(Array.prototype);//Insertingelementsin"botharrays"arr1[0]=0;arr1[9]=9;arr2[0]=0;arr2[9]=9;arr1.push(10);arr2.push(10);console.log(arr1.length);//prints11console.log(arr2.length);//prints1这两个对象都继承了Array.prototype,但它们使用[]运算符的行为不同。为什么? 最佳

javascript - "Class extends value #<Object> is not a constructor or null"

感谢阅读我的文章我的代码出现此错误:“Classextendsvalue#isnotaconstructorornull”这是我的代码,我正在尝试导出/导入类。怪物.js:constminiMonster=require("./minimonster.js");classmonster{constructor(options={name},health){this.options=options;this.health=100;this.heal=()=>{return(this.health+=10);};}}letbigMonster=newmonster("Godzilla");

javascript - 从构造函数中将方法附加到原型(prototype)

这是描述JavaScript中“类”或构造函数的教科书标准方法,直接来自JavaScript权威指南:functionRectangle(w,h){this.width=w;this.height=h;}Rectangle.prototype.area=function(){returnthis.width*this.height;};我不喜欢这里的悬空原型(prototype)操作,所以我试图想办法将area的函数定义封装在构造函数中。我想到了这个,但我不期望它能工作:functionRectangle(w,h){this.width=w;this.height=h;this.con

javascript - jquery .data() 方法

当我在jQuery的数据中存储像{a:1,b:2}这样的对象时,它是复制该对象还是保存对它的引用?我有一个巨大的对象,我希望不同的元素存储从不同点到同一个对象的不同引用,我不希望它被复制。喜欢varobj={a:{one:1,two:2},b:{apple:'yummy',banana:'ehh'}c:{d:{'jQuery':jQuery}e:['Yougetthepoint']}};$('div').data('info',obj.b);$('#JQ').data('jq_reference',obj.c.d.jQuery); 最佳答案