繁体   English   中英

Javascript / Jquery:将输入标签中输入的数字(以空格分隔)传递给数组

[英]Javascript/Jquery : Passing numbers entered in input tag separated with space to an array

我一直在尝试将在输入标签中输入的数字传递给数组。 输入的数字将用空格分隔。

var arr = [];
$(function(){

    var input = $('input').val(),
        button = $('button');
    button.on('click',function{
        arr = input.split(' ');
        console.log(arr);
    }); 

});

样本输入: 1 4 3 5 65 145 6

所需的输出: arr = [1,4 3,5,65,145,6];

拆分后,您将获得strings数组。 仅在拆分之后,您才需要使用Array#mapparseFloat函数将它们解析为数字。

还一注 如果用spaces开始或结束输入,它也会在数组项中提供NaN ,因此最后我用not NaN值过滤了数组。

 var arr = []; $('#btn').on('click', function() { var values = $('#inp').val(); arr = values.split(' ').map(val => parseFloat(val)).filter(val => !Number.isNaN(val)); console.log(arr); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <input id="inp" > <button id="btn">Get values</button> 

var input = '1 4 3 5 65 145 6';
var arr = input.split(' ').map(Number);

结果:

arr = [1、4、3、5、65、145、6]

你快到了

var outputArr = input.split( " " ).map( function(item){ return Number(item) });

要么

var outputArr = input.split( " " ).map( function(item){ return +item });

要么

var outputArr = input.split( " " ).map( function(item){ return parseInt(item) });

您需要迭代数组中的String item并将其转换为Number

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM