2011-10-25 23 views
1

這個練習是相當學術的,但它對理解JavaScript的行爲很有用。Node.js/JavaScript內置類型的存根?

爲什麼這項工作:

var fs = require('fs'); 
console.log(fs.readdirSync('/').length); //approximately '28' on my Macbook 
fs['readdirSync'] = function(){ return ['/tmp', '/bin']; }; 
console.log(fs.readdirSync('/').length); //'2' as expected 

,這並不:

var a = "hello world"; 
console.log(a.length); //'11' 
a['length'] = 1000; 
console.log(a.length); //still '11'... why?? 

我知道這是可能的猴補丁內置類型如String的JavaScript,但有可能存根他們?

在此先感謝。

回答

0

致謝TJ Holowaychuk:字符串是不可變的。所以看起來這是不可能的。