Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.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 js向数组中的元素添加值_Javascript_Arrays - Fatal编程技术网

Javascript js向数组中的元素添加值

Javascript js向数组中的元素添加值,javascript,arrays,Javascript,Arrays,我找到了一些类似问题的答案,但我还是不明白 但我希望这是一个简短的问题,这样我就不会制造太多的麻烦- 我有一个js数组 arr = [ a, b, c] 如何动态地为这些元素添加值?例如,我希望每个元素的值都为true 所以之后应该是这样的: arr = [ a = true, b = true, c = true]; 我尝试了以下方法:使用jquery框架 $.each(arr, function(i){ arr[i] = true;

我找到了一些类似问题的答案,但我还是不明白

但我希望这是一个简短的问题,这样我就不会制造太多的麻烦-

我有一个js数组

arr = [ a, b, c]
如何动态地为这些元素添加值?例如,我希望每个元素的值都为true

所以之后应该是这样的:

arr = [ a = true, b = true, c = true];
我尝试了以下方法:使用jquery框架

$.each(arr, function(i){
                arr[i] = true;
            });
但后来我就明白了

arr = [ true, true, true]
希望有人能帮助我! 塔克斯

这是一种不同类型的数据结构:不是数组,而是映射。PHP使数组和映射具有相同的数据类型,但这是一个不寻常的怪癖

JavaScript中没有通用映射,但只要使用字符串作为键,并且注意避免使用某些内置JavaScript对象成员名称,就可以使用对象:

var map= {'a': true, 'b': true, 'c': true};
alert(map['a']); // true
alert(map.a); // true
预计到达时间:

如果我有一个数组,我如何使它看起来像[required:true,checklength:true]

这是一种不同类型的数据结构:不是数组,而是映射。PHP使数组和映射具有相同的数据类型,但这是一个不寻常的怪癖

JavaScript中没有通用映射,但只要使用字符串作为键,并且注意避免使用某些内置JavaScript对象成员名称,就可以使用对象:

var map= {'a': true, 'b': true, 'c': true};
alert(map['a']); // true
alert(map.a); // true
预计到达时间:

如果我有一个数组,我如何使它看起来像[required:true,checklength:true]


为了让OP和其他新手受益,请注意,使用此方法时,没有您习惯于使用普通索引数组的长度属性。此外,对该数据类型的迭代必须使用for..in完成,而不是使用标准for structure.hey对数组进行迭代。谢谢,但是我仍然不知道如何像上面描述的那样为元素添加值。你只是告诉我如何设置一个直接值的对象。但是如果我有一个数组或对象。。。那么[required,checklength]firebug我怎样才能让它看起来像[required:true,checklength:true]?也许我的英语不够好,无法清楚地描述它-JS中带有命名键的数组是一个对象。他回答了你的问题。为了让OP和其他新手受益,请注意,使用此方法时,没有您习惯于使用普通索引数组的长度属性。此外,对该数据类型的迭代必须使用for..in完成,而不是使用标准for structure.hey对数组进行迭代。谢谢,但是我仍然不知道如何像上面描述的那样为元素添加值。你只是告诉我如何设置一个直接值的对象。但是如果我有一个数组或对象。。。那么[required,checklength]firebug我怎样才能让它看起来像[required:true,checklength:true]?也许我的英语不够好,无法清楚地描述它-JS中带有命名键的数组是一个对象。他回答了你的问题。
var array= ['required', 'checklength'];

var mapping= {};
for (var i= array.length; i-->0;) {
    var key= array[i];
    mapping[key]= true;
}

alert(mapping.required); // true
alert('required' in mapping); // also true
alert('potato' in mapping); // false