Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 单个数组[0]项返回未定义项_Javascript_Jquery_Arrays - Fatal编程技术网

Javascript 单个数组[0]项返回未定义项

Javascript 单个数组[0]项返回未定义项,javascript,jquery,arrays,Javascript,Jquery,Arrays,所有的开发者都比我聪明 所以基本上我有一个名字(first)输入字段,我想让用户在输入中输入他们的名字和姓氏。之后,我想取第二个值(姓氏)并将该值推送到另一个隐藏(display:none)的输入中。因此,理论上,下面的代码应该可以做到这一点 var array = []; var fullname = $("#firstName").value.split(" "); array.push(fullname); $("#lastName").value = array[1]; aler

所有的开发者都比我聪明

所以基本上我有一个名字(first)输入字段,我想让用户在输入中输入他们的名字和姓氏。之后,我想取第二个值(姓氏)并将该值推送到另一个
隐藏(display:none)
的输入中。因此,理论上,下面的代码应该可以做到这一点

var array = [];

var fullname = $("#firstName").value.split(" ");

array.push(fullname);

$("#lastName").value = array[1];

alert(array[1])

例如,我在firstName输入中输入“First-Last”作为名称值,然后拆分并推送到数组中,如果我向它发出警报
警报(数组)或$(“#lastName”)。value=array
,它会推送正确的值,但是当我尝试仅警报或设置数组[1]的第二部分时,它会一直返回为未定义!?请告诉我我的朋友们

首先,jQuery使用
val()
方法检索表单元素的值。尝试访问
属性将不会返回任何结果

除此之外,您的问题是因为您正在通过将
split()
(即数组)的结果推入
array
来创建嵌套数组:

var fullname=$(“#firstName”).val().split(“”);
var数组=[];
array.push(全名);
console.log(数组)

您有一些语法问题,如:

var array = [];

var fullname = $("#firstName").val();
array=fullname.split(" ");
$("#lastName").val(array[1]);
alert(array[1]);

您希望将数组值推送到数组,而不是
array.push(fullname),使用

array.push.apply( array , fullname);

在代码中,使用
$(“#lastName”).val()
而不是
$(“#lastName”).value
。您正在使用
数组[]
而不是数组构造函数()。例如:
var a=array[1]
返回
1
,表示
a的值
=1


请检查链接:

使用
.val()
而不是
.value
?您的数组将类似
[[“the”,“splitted”,“value”]
。您需要使用
array=fullname
而不是
push()
不需要
array
变量
fullname
是您想要的数组,
fullname[1]
是他们的姓…还有
val(fullname[1])
而不是
value=fullname[1]
。这个脚本根本不应该工作
.value
未定义
因此
.value.split(“”
将抛出类型错误…除了删除
value
,您还没有更改有缺陷的逻辑。当原始空数组定义不存在时,有点过于复杂used@RoryMcCrossan我知道,但你已经给出了明确的答案:)没问题,很高兴为您提供帮助。您的第二个声明和链接相互矛盾。还请注意,
[]
新数组()的快捷方式,因此您认为两者之间存在的任何差异都是错误的。
array = array.concat(fullName);