javascript - 将特定字符串添加到对象数组中具有条件的对象数据

标签 javascript

我有一个对象数组,如果它以“//”开头,我会尝试修改它的值。如果满足条件,我想在此之前添加“https:”。那么该值应该类似于“https://”。我做了以下事情。无法弄清楚问题出在哪里。

var projects = [
{
    value: "//",
    label: "jQuery",
    desc: "the write less, do more, JavaScript library",
    icon: "jquery_32x32.png"
},
{
    value: "//",
    label: "jQuery UI",
    desc: "the official user interface library for jQuery",
    icon: "jqueryui_32x32.png"
}];
const string1 = "https:";
const objIndex = projects.findIndex(obj => obj.value.indexOf('/') === 0 ? obj.value === string1.concat(obj.value): obj.value === obj.value );console.log(objIndex);

最佳答案

首先,你的字符串变量定义有误,你在这里使用了不同的引号字符:const string1 = 'https:"; 您可以使用“reduce”创建一个新数组。

let projects = [
{
    value: "//google.com",
    label: "jQuery",
    desc: "the write less, do more, JavaScript library",
    icon: "jquery_32x32.png"
},
{
    value: "//",
    label: "jQuery UI",
    desc: "the official user interface library for jQuery",
    icon: "jqueryui_32x32.png"
}];
let stringToReplace = "https:";
let objIndex = projects.reduce((arr, item) => (item.value = item.value.replace(/(\/\/.*)/, `${stringToReplace}$1`), arr.push(item), arr), []);
console.log(objIndex);

关于javascript - 将特定字符串添加到对象数组中具有条件的对象数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63110357/

相关文章:

javascript - 当 iframe src 更改时 jQuery 切换类

Javascript 三元运算符左值

javascript - 如何在javascript文件中加载相同的函数两次

javascript - 使用 jQuery,如何更改元素的 html 值? (div)

javascript - 关闭后打开 jQuery 事件监听器

javascript - 移动时如何将图像保持在另一个图像后面?

javascript - 从数组 Javascript 中删除重复项

javascript - 在 Android Chrome 52 上使用 Web MIDI API

javascript - 从 android 连接到 node.js 服务器时遇到问题

javascript - 将当前项与原始数组绑定(bind)