1. 程式人生 > >js中字串是不是物件

js中字串是不是物件

在js中字串不是物件,它是不可被修改的,就像在使用toUpperCase方法之後不會改變原來的字串的值,而是新建立了一個字串。

既然字串不是物件,那麼它為什麼會有屬性呢

var s = "hello";
var word = s.substring(0,s.length);

這是因為在引用字串屬性的時候,js就會通過呼叫 new String(s)將其轉換成物件,這個物件繼承了字串的方法。

var s = "hello";
s.len = 4;
var x = s.len   //undefined

字串物件的len屬性在被賦值之後會馬上被銷燬,所以在進行賦值給x時已經沒有這個物件了,所以是undefined