gpt4 book ai didi

javascript - LastIndexOf 的作用是什么?

转载 作者:行者123 更新时间:2023-11-28 16:31:28 25 4
gpt4 key购买 nike

window.onload = initAll;

function initAll() {
var allLinks = document.getElementsByTagName("a");

for (var i=0; i<allLinks.length; i++) {
if (allLinks[i].className.indexOf("menuLink") > -1) {
allLinks[i].onclick = toggleMenu;
}
}
}

function toggleMenu() {
var startMenu = this.href.lastIndexOf("/")+1;
var stopMenu = this.href.lastIndexOf(".");
var thisMenuName = this.href.substring(startMenu,stopMenu);

var thisMenu = document.getElementById(thisMenuName).style;
if (thisMenu.display == "block") {
thisMenu.display = "none";
}
else {
thisMenu.display = "block";
}

return false;
}

我有两个问题

this.href.lastIndexOf("/")+1;this.href.lastIndexOf("."); 做什么?

最佳答案

lastIndexOf 函数用于确定字符串中字符(或子字符串)最后一次出现的位置。

例如:

var helloWorldString = "Hello, World";
var firstOccurance = helloWorldString.indexOf('o'); // returns 4
var lastOccurance = helloWorldString.lastIndexOf('o'); // returns 8

因此,在您的代码中,如果您有一个路径“http://www.mywebsite.com/foo/bar.html”,您的代码将执行以下操作:

//Find the last "/" character in the URL and adds one to the result.
var startMenu = this.href.lastIndexOf("/") + 1;

//Find the last "." character in the URL.
var stopMenu = this.href.lastIndexOf(".");

//get the file name from the URL
var thisMenuName = this.href.substring(startMenu,stopMenu);

因此,给定上面的示例 URL,thisMenuName 将包含“bar”。

HTH

关于javascript - LastIndexOf 的作用是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5779346/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com