Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
835 views
in Technique[技术] by (71.8m points)

ecmascript 6 - why javascript const keyword is not working in array?

function home() {
  const list = ['john', 'adele', 'hary']; list.push('tiger');
  return list;
}
home() //["john", "adele", "hary", "tiger"]

push method is available and also, list[0] = "abc" is available

In JS, const keyword is different to Java or CPP??

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

With a const declaration, you can't reassign the variable but you can mutate it, which is what happens with the Array.prototype.push method.

You won't be able to do like

function home() {
  const list = ['john', 'adele', 'hary']; 
  list = list.concat(['tiger']); // this is reassignment and hence will fail
  return list;
}
home()

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...