在访问jsonObject属性之前,检查是否未定义errorMessage的最短语法是什么?
var jsonObject = SomeMethodReturningAnObject();
if (jsonObject.errorMessage === undefined) // jsonObject can be undefined and this will throw an error
/* success! */
else
alert(jsonObject.errorMessage);
我正在创建一个简单的网站与nodejs使用express框架,couchdb的数据库和EJS的模板。有时,我的某些字段在某些JSON文档中为空或未定义,我需要处理这些情况。
<% if (typeof test !== 'undefined') { %>
<p><%= test %></p>
<% } %>
这段代码似乎可以很好地处理未定义的'test‘字段,但下面的代码抛出了一个错误,显示'test is undefined’
<% if (test) { %>
<p>
在阅读了一本“基本JS设计模式”的书后,我无法理解这段代码中私有变量的行为:
var SingletonTester = (function () {
// options: an object containing configuration options for the singleton
// e.g var options = { name: "test", pointX: 5};
function Singleton( options ) {
// set options to the options supplied
// or
我是一个经验丰富的C++/Java程序员,首次在Javascript中工作。我用Chrome作为浏览器。
我用字段和方法创建了几个Javascript类。当我读取不存在的对象字段时(由于我的错误),Javascript运行时不会抛出错误或异常。显然,这样的读取字段是“未定义的”。例如:
var foo = new Foo();
foo.bar = 1;
var baz = foo.Bar; // baz is now undefined
我知道,我可以检查"“中提到的”未定义“是否相等,但这似乎很乏味,因为我经常在代码中阅读对象字段。
,在读取未定义的属性时,是否存在强制抛出错误或异常