1
在livescript
中,我們可以使用^^
克隆一個對象。Livescript的克隆操作符^^在服務器端不工作(node.js)
例如,
consloe.log (^^{a:1})
將被編譯到
// Generated by LiveScript 1.2.0
(function(){
console.log(clone$({
a: 1
}));
function clone$(it){
function fun(){} fun.prototype = it;
return new fun;
}
}).call(this);
但是,這些代碼在瀏覽器中順利工作,但不是在node.js中
- 在瀏覽器中,它在控制檯中打印
fun {a: 1}
。 - 在node.js中,它什麼也沒有顯示。
是什麼原因?
我試圖在瀏覽器和node.js中測試這個,每當我將_proto_設置爲{a:1}時得到一個空對象{}。即使通過查看生成的腳本和livescript網站:^^只克隆原型而不是hasOwnProperty(s)。您可能想要查看可能執行您想要的任務的<<<操作符。 –
@Nitin ...發佈作爲答案:)。 – Ven
Livescript不會將它編譯爲Object.create? – Bergi