我试图用箭头功能node v0.10.33
下Ubuntu 14.04
(我运行与节点--harmony
标志),但我得到这个错误:
console.log( [1,2,3,4].map(x => x*x) );
^
SyntaxError: Unexpected token >
at Module._compile (module.js:439:25)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:906:3
Run Code Online (Sandbox Code Playgroud) 考虑下面的代码:
html文件的一部分:
<body ng-app>
<div ng-controller="MainCtrl">{{name}}</div>
</body>
Run Code Online (Sandbox Code Playgroud)
js文件的一部分:
function MainCtrl($scope) {
$scope.name = "John";
}
Run Code Online (Sandbox Code Playgroud)
我总是把我的控制器放在一些模块中,我在ng-app中定义了它的名字.当我没有定义任何模块时它是如何工作的?
在chrome devtools中,如果我首先尝试声明一个变量,但是操作失败(请参见下面的示例,我尝试将其分配给未定义的变量),那么我将得到以下行为:由于以下原因,我无法分配给该变量:由于SyntaxError,我无法同时声明ReferneceError。请参阅下面的屏幕。
以下对我来说似乎有点不合逻辑。有人可以解释吗?
我在OS X El Capitan上使用的是Chrome版本55.0.2883.95(64位)。
我刚刚开始学习Java.我有一些虚假的问题.在这种情况下,我真的不明白为什么:
int j = 5;
for (int j = 0; j < 10; j++) {
// do sth
}
Run Code Online (Sandbox Code Playgroud)
我的编译器说:the variable j is already defined in the scope
.
为什么这第二j
个问题?我认为它应该只是影响第一个.
我有以下代码:
var outer = function(){
var that = this;
function inner(){
assert(this===that, "Inner === Outer");
console.log(this);
console.log(that);
}
inner();
return this;
};
outer();
var obj = {};
outer.call(obj);
Run Code Online (Sandbox Code Playgroud)
执行第一次调用时 - outer().对我来说一切都很清楚 - 外部在窗口上下文中调用,这个和那个===窗口.然后当我调用函数外部调用函数时,事情变得有线.那个=== obj,很明显,但为什么这个===窗口?
我试图了解下面的代码中发生了什么,有人可以帮忙吗?我正在使用node.js,我试图覆盖本机控制台(做其他事情).
这很好用:
var output = console;
console = {a: 2};
output.log(console)
Run Code Online (Sandbox Code Playgroud)
而这不是:
var output = console;
var console = {a: 2};
output.log(console)
Run Code Online (Sandbox Code Playgroud)
我得到"无法调用未定义的方法'日志'".