来自动态字符串的Javascript切片字符

时间:2017-03-09 11:47:22

标签: javascript html css

我正在尝试删除动态文件列表中每个下拉项的最后四个字符。

我在阅读this thread后尝试使用javascript spice语法,但它似乎删除了列表中其他项的完整字符串,而不仅仅是字符。 map.entries = { 0: {"0", foo }, 1: {"1", "bar"} 2: {"2", 2000 } }

我不确定我的做法有什么问题。

list = list.slice(0, -1);

2 个答案:

答案 0 :(得分:1)

试试这个

    $.each(list,function(i){
  list[i].slice(0, -4);
});

假设您已将文件排序到列表对象中..

或只是替换你的代码

for (var i in list) {
                    $("filename").append("<option>" + list[i] + "</option>");
                                        }

$.each(list, function(i){
list[i] = list[i].slice(0,-4);
$("filename").append("<option>" + list[i] + "</option>");
})

答案 1 :(得分:0)

您正在切割数组而不是字符串。

尝试在此循环中使用切片。

for (var i in list) {
                        list[i] = list[i].slice(0, -4); //remove last 4 characters
                        $("filename").append("<option>" + list[i] + "</option>");
              }

更新:回答评论,

您可以使用

for (...) {
        // use value attribute to ensure that the value is used in its entirety.
        $("filename").append("<option value='" + list[i] + "'>" + list[i].slice(0, -4) + "</option>");
}