Tag: 未定义

JavaScript – 确定一个属性是否被定义,并设置为“未定义”,或者是未定义的

说我有以下代码: function One() {} One.prototype.x = undefined; function Two() {} var o = new One(); var t = new Two(); ox和tx都将评估为undefined 。 o.hasOwnProperty('x')和t.hasOwnProperty('x')将返回false; propertyIsEnumerable也是一样。 两个问题: 有什么办法可以告诉牛被定义并设置为undefined ? 有没有任何理由? (如果两者在语义上相同?) 一个小小的警告:做(在o中的propName)循环会产生“x”作为其中一个string,而在t中做它不会 – 所以它们在内部performance如何(至less在Chrome中)有所不同。

node.js在控制台上显示“undefined”

最近我在Windows 7机器上安装了node.js。 在JavaScript的执行过程中,我得到了一个未定义的消息,并成功执行了expression式。 这里有什么问题? 我没有注意到任何其他的副作用。

undefined == undefined是真的。 但是undefined> = undefined是false?

我只是有一个微不足道的问题。 为什么undefined == undefined返回true ,但是undefined >= undefined是false ? undefined等于undefined 。 但这不等于或大于?

有什么理由使用null,而不是在JavaScript中定义?

我已经写了很长一段时间的JavaScript,我从来没有理由使用null 。 看来, undefined总是可取的,并以编程方式用于相同的目的。 什么是一些实际的原因使用null而不是undefined ?

带有jQuery的HTML5 – e.offsetX在Firefox中未定义

在我的HTML5页面中,我有一个div与mousemove事件如下: $('#canvas').mousemove(function(e){ xpos = e.offsetX; ypos = e.offsetY; $('#mouse').html("X : " + xpos + " ; Y : " + ypos); }); Google Chrome可以正常工作。 但在Firefox中,这两个都是undefined的值。 我已经通过使用Firebug来检查它,也就是将e对象logging到控制台。 发现offsetX和offsetY都是undefined 。 当我在Googlesearch时,有一个解决scheme说如果offsetX和offsetY都是未定义的,我应该使用layerX和layerY 。 但从Firebug,我无法find它。 甚至我也试过这样的尝试: xpos = (e.offsetX==undefined)?e.layerX:e.offsetX; ypos = (e.offsetY==undefined)?e.layerY:e.offsetY; 但是,这也给undefined的值。 我正在使用最新的jQuery – v1.8.2。 我正在testing我的Firefox v14.0.1 任何想法或build议? 编辑 感谢dystroy和vusan帮助我。 上述问题的解决办法如下: 解 $('#canvas').mousemove(function(e){ $('#cursor').show(); if(e.offsetX==undefined) // this works […]

如果我们设置undefined的值会发生什么?

下面这行是做什么的? undefined = 'A value'; 如果它不改变undefined的值,那么幕后会发生什么?

如何将variables与未定义的比较,如果我不知道它们是否存在?

在JavaScript中你可以声明一个variables,如果它是undefined ,你可以检查variable == undefined ; 我知道,但是如何比较一个你不知道的值呢? 例如,我有一个当用户点击一个button时创build的类。 在此之前,课程是不确定的 – 它不存在任何地方; 我怎么能比较呢? 有没有一种方法,而不使用try – catch ?

未定义或为AngularJS空

当我写手表处理函数时,我检查undefined newVal参数和null 。 为什么AngularJS有这样的行为,但没有特定的效用方法? 所以有angular.isUndefined但不angular.isUndefinedOrNull 。 手工实现并不困难,但是如何在每个控制器中扩展angular度以实现该function呢? TNX。 编辑 : 这个例子: $scope.$watch("model", function(newVal) { if (angular.isUndefined(newVal) || newVal == null) return; // do somethings with newVal } 处理这种方式是否被普遍接受? 编辑2 : JSFiddle示例( http://jsfiddle.net/ubA9r/ ): <div ng-app="App"> <div ng-controller="MainCtrl"> <select ng-model="model" ng-options="m for m in models"> <option value="" class="ng-binding">Choose model</option> </select> {{model}} </div> </div> var app = […]

CoffeeScript未定义

在javascript中检查variables是否从未创build,我们只是做 if (typeof MyVariable !== "undefined"){ … } 我想知道我是如何做到这一点的?…我尝试类似的东西 if (MyVariable?false){ … } 但是这个检查是否MyVariable是一个函数,如果这样会调用MyVariable(false),如果不是,将调用void(0)或类似的东西。

应该JSON包含空值

我正在创build一个以JSONforms返回结果的API。 是否有一个当前的最佳做法,是否应该在值为空的结果中包含键? 例如: { "title":"Foo Bar", "author":"Joe Blow", "isbn":null } 要么 { "title":"Foo Bar", "author":"Joe Blow" } 由于第二个更小我倾向于这种风格,但我不知道是否有一个首选的风格或不。 从客户angular度来看,这两种风格似乎在function上是等同的。 任何优点或缺点每个?