草庐IT

Math对象

全部标签

javascript - 打印对象的所有隐藏属性

所以我有空对象a={}。当我执行console.log(a)、console.dir(a),甚至for(bina){console.log(b);}我看不到“隐藏属性”,例如__defineGetter__、hasOwnProperty等。如何打印对象的所有属性? 最佳答案 你要找的是non-enumerable对象的属性(可能还有它从其原型(prototype)继承的属性)。我认为没有任何标准方法可以通过JavaScript获取它们。如果您使用调试器检查对象,通常会显示对象的所有属性(不仅仅是可枚举的属性)。现在所有主流浏览器都内

javascript - 如何在 CoffeeScript 中克隆/复制对象的实例?

相当直截了当的问题,但谷歌搜索还没有发现任何东西。如何在Coffeescript中复制/克隆/复制对象的实例?我总是可以创建一个clone()方法来返回一个带有复制值的新实例,但这似乎是一种容易出错的方法。CoffeeScript是否提供更简单的解决方案? 最佳答案 这可能有效。clone=(obj)->returnobjifobjisnullortypeof(obj)isnt"object"temp=newobj.constructor()forkeyofobjtemp[key]=clone(obj[key])temp采用自:Wh

JavaScript 对象 - 调用而不创建它(如 Math 对象)

我是JavaScript对象的新手。我想创建一个像JavaScriptMath对象这样的对象。但它不起作用(它不返回任何内容)。我想创建一个名为Area的对象并为其提供方法square和rectangle。我想像使用Math对象一样使用它。要找到正方形的面积,我会这样做:varsquareArea=Area.square(10);//100我为示例选择了区域,因为它很简单。我的脚本如下:window.onload=function(){functionArea(){functionsquare(a){area=a*a;returnarea;}functionrectangle(a,b)

javascript - 如何使用小写键将 JSON 解析为对象

我有一些JSON数据,但所有的键都是大写的。如何解析它们并将键转换为较低的?我正在使用jQuery。例如:JSON数据:{"ID":1234,"CONTENT":"HELLO"}期望的输出:{id:1234,content:"HELLO"} 最佳答案 这个怎么样:json.replace(/"([^"]+)":/g,function($0,$1){return('"'+$1.toLowerCase()+'":');});正则表达式捕获键名称$1并将其转换为小写。现场演示:http://jsfiddle.net/bHz7x/1/[编辑

javascript - (Angular) 插入一个对象到 json 数组

我正在尝试将新项目添加到roleListjson数组。我试过push/concat但它不会更改roleList数组。有什么办法可以解决这个问题?//Thejavascript:functionRoleListCtrl($scope){$('#myTaba[href="#role"]').tab('show');$scope.newCompanyName="";$scope.newPosition="";$scope.addRole=function(){varnewRole=newfunction(){this.companyName=$scope.newCompanyName;thi

javascript - jQuery 连接对象值

我正在尝试连接对象/关联数组的值,以便更轻松地更改我的代码,但我不知道如何正确地连接它们。这是我的代码:$(document).on("click",".taskstatusa",function(event){event.preventDefault();classes={'OPEN':'state_open','COMPLETED':'state_completed','SKIPPED':'state_skipped','REJECTED':'state_rejected'};joinedClasses=classes.map(function(value,key){returnk

javascript - 基于特定对象属性的 jQuery 独特对象

我想要一组独特的对象,删除具有某些特定属性值的重复对象。例如:在下面的代码片段中,event1和event2具有相同的标题和相同的开始值,event3和event4具有相同的标题但开始时间不同。我想从对象数组中删除event2(因为它与event1具有相同的标题和起始值)而不是event4(因为它只有相同的标题)。我的代码如下:varevent1={id:1,title:'ABC',start:'10'};varevent2={id:2,title:'ABC',start:'10'};varevent3={id:3,title:'DEF',start:'12'};varevent4={

javascript - 从 react-router 浏览器 History 对象获取当前页面路径

在我的组件之外,我需要查询当前事件的URL。我将基于此在主体(在我的react根之外)上设置一些类。第一次尝试是使用//GetsanarrayofclassnamesthatIcanaddtomybodytaggetClassNames(window.location.pathname);但似乎window.location.path在ReactRouter导航时没有更新。令人惊讶的是。所以我想,好吧,也许我可以从browserHistory中获取它import{browserHistory}from'react-router'但是,唉,我也看不到从这里读取当前页面路径的方法(这个对象

javascript - 在javascript中创建不可变对象(immutable对象)

我有一个从api接收一些数据的例程。我想将这些数据存储在一个对象中,但在那之后我想“锁定”这个对象,并且在那之后不允许对属性或它们的值进行任何更改。那可能吗?(如果可能,只使用ES5)。 最佳答案 如果您希望某个对象不能被修改,您可以使用Object.freeze。.TheObject.freeze()methodfreezesanobject:thatis,preventsnewpropertiesfrombeingaddedtoit;preventsexistingpropertiesfrombeingremoved;andpr

javascript - THREE.js 光线转换对单个> 500k 多边形(面)对象非常慢,线与地球相交

在我的项目中,我有一个玩家在地球上行走。地球不仅仅是一个球体,它还有山脉和山谷,所以我需要改变玩家的z位置。为此,我从玩家的位置向单个物体(地球)转换一条光线,我得到它们相交的点并相应地改变玩家的位置。我只在玩家移动时进行光线转换,而不是在每一帧上。对于一个复杂的对象,它需要永远。具有~1m多边形(面)(1024x512分段球体)的对象需要~200ms。光线转换是否针对每张脸?是否有一种传统的快速方法可以在三中实现这一点,比如一些加速结构(八叉树?bvh?——老实说,从我的谷歌搜索中我似乎没有发现三中包含这样的东西)或其他一些想法-开箱即用(无光线转换)方法?vardir=g_Game