【发布时间】:2021-01-25 10:24:04
【问题描述】:
我无法让 splice 为我的 /home 工作。
我显然做错了什么,但我不知道是什么,请帮忙?
const logArray = [
"|timestamp |url |userid|",
"|2019-03-01 09:00:00UTC |/contact.html |12345 |",
"|2019-03-01 09:00:00UTC |/contact.html |12346 |",
"|2019-03-01 10:00:00UTC |/contact.html |12345 |",
"|2019-03-01 10:30:00UTC |/home.html |12347 |",
"|2019-03-01 11:00:00UTC |/contact.html |12347 |",
"|2019-03-02 11:00:00UTC |/contact.html |12348 |",
"|2019-03-02 12:00:00UTC |/home.html |12348 |",
"|2019-03-03 13:00:00UTC |/home.html |12349 |",
""
];
let result = [];
const urls = () => {
const url = logArray.map((Objects, index, arr) => {
return Objects.slice(25, 38);
});
console.log("url:", url);
if (url) {
const contact = url.find((a) => a.includes("contact"));
result.push(contact);
console.log(contact);
//console.log(contact)
}
if (url) {
const home = url.find((a) => a.includes("home"));
result.splice(3, 0, home);
console.log(home);
}
};
urls();
console.log(result);
我计算了每个 url 上的唯一用户 ID,没有。每个网址的访问次数。
所以我把这个数组拿回来了,根本没有拼接?!:
console.log("result:", result); //output ["/contact.html", "/home.html ", 5, 4, 1, 1]
这是我想要的样子:
// dream scenario: ["/contact.html", 5, 4, "/home.html", 1, 1]
当我从代码中取出拼接功能并在 codepen 中尝试它时,它工作正常......但不是在完整代码中
【问题讨论】:
-
您的代码不会产生该输出。我将您的代码移到了 sn-p 中,以便它可以运行。
result中没有存储任何号码。请确保我们可以重现您提出的问题。
标签: javascript arrays splice array-splice