Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/419.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 数据类型错误:arr.push不是函数_Javascript_Arrays - Fatal编程技术网

Javascript 数据类型错误:arr.push不是函数

Javascript 数据类型错误:arr.push不是函数,javascript,arrays,Javascript,Arrays,JavaScript中的这段代码给出的错误如下: 类型错误:arr.push不是一个函数 var arr=new Array(); arr=计算显示值; 控制台日志(arr); arr.push(“*”)可能您正在更改此行中的数组类型: arr = calc.display.value; 这是因为您找不到方法push 您能否像这样初始化数组: var arr = []; //Put your element in Array arr.push('elem1'); 您正在初始化变量arr,然

JavaScript中的这段代码给出的错误如下:

类型错误:arr.push不是一个函数

var arr=new Array();
arr=计算显示值;
控制台日志(arr);

arr.push(“*”)可能您正在更改此行中的数组类型:

arr = calc.display.value;
这是因为您找不到方法
push

您能否像这样初始化数组:

var arr = [];
//Put your element in Array
arr.push('elem1');

您正在初始化变量
arr
,然后在后面的行中覆盖它。 基本上你所做的就是:

var arr = calc.display.value;
console.log(arr);
arr.push("*");
您没有指定
calc.display.value
是什么,假设它是一个字符串-您真正要做的是:

var arr = "";
console.log(arr);
arr.push("*"); //String.prototype does not contain a function called `push` thereby the error.

如果要将包含
calc.display.value
的字符串附加上“*”:

如果要将“*”添加到具有
calc.display.value
的数组中:

var arr = [calc.display.value];
arr.push("*");
console.log(arr);
// Expected out: ["displayvalue", "*"]

什么是calc.display.value?@AshayMandwarya不管它是什么,它肯定不是数组。@NikKyriakides确定下一条语句用完全不同的值覆盖
arr
时,执行
new Array()
有什么意义?
var arr = [calc.display.value];
arr.push("*");
console.log(arr);
// Expected out: ["displayvalue", "*"]