我是 javascript 新手,所以请原谅我提出这样一个新手问题。我一直在尝试通过查看 SPA 示例来学习 javascript 语言,这些示例使用以下库 durandal、knockout js 和微风 js、sammy 和 require,并且我认为我正在尝试使用模块模式。我遇到了不同的代码语法如下
define(['services/logger'], function (logger) {
var model = "somedata"
var vm = {
activate: activate,
title: 'Details View'
};
return vm;
function activate() {
logger.log('Details View Activated', null, 'details', true);
return true;
}
});
和
define(['services/logger'], function (logger) {
var model = "somedata"
return {
activate: activate,
title: 'Details View'
};
function activate() {
logger.log('Details View Activated', null, 'details', true);
return true;
}
});
我的问题是
- 过度使用一种语法有优势吗?
- 上面代码块中的变量“model”会有全局作用域吗?
- 从函数中访问“title”变量的最佳方法是什么?我应该使用 this.title 吗?
先感谢您。