Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.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 数组中的单个项是否可以识别包含其自身的同一个数组对象?_Javascript_Arrays - Fatal编程技术网

Javascript 数组中的单个项是否可以识别包含其自身的同一个数组对象?

Javascript 数组中的单个项是否可以识别包含其自身的同一个数组对象?,javascript,arrays,Javascript,Arrays,例如,如果我有一个数组: var myArr =[a,b,c]; 有没有办法做到这一点 a.someReferenceMethod = myArr? 您可以这样做: <script type="text/javascript"> var a = { myArray : [], getArray : function(){return this.myArray}, setArray : function(array){this.myArray = array} }; var myA

例如,如果我有一个数组:

var myArr =[a,b,c];
有没有办法做到这一点

a.someReferenceMethod = myArr?

您可以这样做:

<script type="text/javascript">
var a = {
myArray : [],
getArray : function(){return this.myArray},
setArray : function(array){this.myArray = array}
};
var myArr =[a, "test"];
a.setArray(myArr);
window.alert(myArr[0].getArray()[1]);
</script>

变量a={
myArray:[],
getArray:function(){返回this.myArray},
setArray:函数(数组){this.myArray=array}
};
var myArr=[a,“测试”];
a、 setArray(myArr);
alert(myArr[0].getArray()[1]);

在这种情况下,调用数组中第一个元素的getArray()方法将返回数组本身…

取决于
a
是什么。如果它是基元类型,那么它是不可能的。如果它是一个物体,当然可以有循环引用。但是你可能希望它是自动的,那么你就不走运了。不,没有,除非你特别指定了一个,例如使用
a.array=myArr,但这是给定的,并且对数字、布尔或字符串等基本体也不起作用。你想实现什么?是的,我希望有一个本机支持的方法将父数组对象返回到数组中的每个节点,我想我将通过for循环或其他方式将数组对象本身作为属性分配给数组中的每个项,谢谢大家!您可以在已知数组中查找它,但没有内在反射。@Hank:想想情况
var arr1=[a,b],arr2=[a,c]。哪个数组将是
a
的父数组?这是不确定的。谢谢,我希望我不必这么做,哈哈!哦,我想JS能做的是有限的。