无法在任何地方找到这个答案,但我确实找到了几个讨论这个问题的邮件列表,但这些列表相当陈旧,我不知道是否实现了这个.
无论如何强制在node.js中使用严格模式?
写"use strict";在我所有的.js文件...好,我喜欢它被迫使用严格模式,而不是增加额外的样板.
var f = function(o){ return this+":"+o+"::"+(typeof this)+":"+(typeof o) };
f.call( "2", "2" );
// "2:2::object:string"
var f = function(o){ return this+":"+(typeof this)+":"+(typeof o); };
var x = [1,/foo/,"bar",function(){},true,[],{}];
for (var i=0;i<x.length;++i) console.log(f.call(x[i],x[i]));
// "1:object:number"
// "/foo/:object:object"
// "bar:object:string"
// "function () {\n}:function:function"
// "true:object:boolean"
// ":object:object"
// "[object Object]:object:object"
Run Code Online (Sandbox Code Playgroud)
我在Chrome,Firefox和Safari中看到相同的结果,所以我认为它符合规范,但是......为什么?这个规范中的定义是什么?为什么不用于功能呢?