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
568 views
in Technique[技术] by (71.8m points)

javascript - indexOf always returning true for document.location

I have the following script:

if (window.location.href.indexOf('env=P')) {      
  env = 'P';
  console.log("P");
} else {
  env = 'A';
  console.log("A");
}   

env is always equal to P no matter what the url is. I am quite sure I have used indexOf before for uri's but am not sure the issue here.

See Question&Answers more detail:os

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

1 Reply

0 votes
by (71.8m points)

That's because indexOf doesn't return 0 and is therefore evaluated as true. Try changing to

if (window.location.href.indexOf('env=P') > -1)

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

...