【问题标题】:How do I show only numbers from a Javascript array that has both numbers and letters use parseInt?如何仅显示包含数字和字母的 Javascript 数组中的数字使用 parseInt?
【发布时间】:2018-06-23 15:13:07
【问题描述】:

我正在尝试使用 parseInt 仅显示以下数组中的数字:

1,2,a,b

到目前为止,这是我的 javascript 代码:

var filter_list = ["1,2,a,b"];

function myFunction() {
  parseInt(filter_list);
  return filter_list;
}

document.getElementById("display").innerHTML = filter_list;

也许我的想法甚至行不通。希望得到一些反馈。

【问题讨论】:

  • 您似乎在这里缺少一些 JavaScript 基础知识。您没有包含四个项目的数组,您有一个包含字符串的单个项目数组。您定义了一个函数 (myFunction) 但不要在任何地方调用它,并且该函数使用 parseInt 但不使用返回值。您可能应该从涵盖其中一些基本概念的 JavaScript 教程开始,MDN 上有一些很好的教程:developer.mozilla.org/bm/docs/Web/JavaScript
  • 您需要为每个元素调用 parseInt,而不是整个数组。然后你可以过滤 NaN

标签: javascript arrays parseint


【解决方案1】:

您有一个数组,其中一个元素是字符串,因此您可以使用joinsplit,然后使用filter 方法。

var data = ["1,2,a,b"];
var numbers = data.join(",").split(",").filter(Number);
console.log(numbers)

【讨论】:

【解决方案2】:

首先,您必须知道数组的每个元素都必须有自己的“”。像这样:

var filter_list = ["1","2","a","b"];

那么,如果你想知道数字元素,你可以这样做:

var filter_list = ["1","2","a","b"];

for(i = 0; i < filter_list.length; i++ {

    if (!isNaN(ParseInt(filter_list[i])){

       var new_array = [];

       new_array[i] = filter_list[i];
    }
}

document.getElementById("display").innerHTML = new_array;

不知道是不是你想知道的。

【讨论】:

    猜你喜欢
    • 2021-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-26
    相关资源
    最近更新 更多