精华内容
下载资源
问答
  • I'm trying .map(), but maybe that isn't right. What am I missing? I've tried a bunch of things, but just wrote it in quotes in the code below to try and convey what I'm after. Thanks. var newArray = ...

    I have this array of objects:

    var firstArray = [{created:"01/01/2015 03:24:33 AM", lat:"123"}, {created:"01/02/2015 03:24:33 AM", lat:"123"}];

    I want a new array of objects with the datetimes converted to milliseconds:

    var newArray = [{created:1420070400000, lat:"123"}, {created:1420156800000, lat:"123"}];

    How do I change the values of the first property in each object? I'm trying .map(), but maybe that isn't right. What am I missing? I've tried a bunch of things, but just wrote it in quotes in the code below to try and convey what I'm after. Thanks.

    var newArray = firstArray.map( "the value of the first property in each object" (Date.parse());

    解决方案

    The argument to .map should be a function where you make your appropriate changes.

    newArray = firstArray.map(function (item) {

    return {

    created: Date.parse(item.created),

    lat: item.lat

    };

    });

    展开全文
  • this.lcd13indexgroupList = this.lcd11entityList.map((item) => { return { NameEn: item.entityNameEn, NameCn: item.entityNameCn } })
    this.lcd13indexgroupList = this.lcd11entityList.map((item) => {
      return {
        ...item, // 数组lcd11entityList中原有的项
        NameEn: item.entityNameEn,  // 追加NameEn项
        NameCn: item.entityNameCn   // 追加NameCn项
      }
    })
    展开全文
  • 本文实例讲述了JS自定义对象实现Java中Map对象功能的方法。分享给大家供大家参考。具体分析如下: Java有集合,Map对象存储工具类,这些对象使用简易,但是在JavaScript中,你只能使用Array对象。 这里我创建一...
  • Js中Map对象

    2019-07-17 09:07:45
    map()方法创建一个新数组,其结果是该数组的每个元素都调用一个提供的函数后返回的结果。 var new_array = arr.map(function callback(currentValue[, index[, array]]) { // Return element for new_array }...

    map() 方法创建一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后返回的结果。

    var new_array = arr.map(function callback(currentValue[, index[, array]]) {
     // Return element for new_array 
    }[, thisArg])

    callback

    生成新数组元素的函数,使用三个参数:

    currentValue

    callback 数组中正在处理的当前元素。

    index可选

    callback 数组中正在处理的当前元素的索引。

    array可选

    callback  map 方法被调用的数组。

    thisArg可选

    执行 callback 函数时使用的this 值。

    map 方法会给原数组中的每个元素都按顺序调用一次  callback 函数。callback 每次执行后的返回值(包括 undefined)组合起来形成一个新数组。 callback 函数只会在有值的索引上被调用;那些从来没被赋过值或者使用 delete 删除的索引则不会被调用。

    callback 函数会被自动传入三个参数:数组元素,元素索引,原数组本身。

    如果 thisArg 参数有值,则每次 callback 函数被调用的时候,this 都会指向 thisArg 参数上的这个对象。如果省略了 thisArg 参数,或者赋值为 null 或 undefined,则 this 指向全局对象 。

    map 不修改调用它的原数组本身(当然可以在 callback 执行时改变原数组)。

    使用 map 方法处理数组时,数组元素的范围是在 callback 方法第一次调用之前就已经确定了。在 map 方法执行的过程中:原数组中新增加的元素将不会被 callback 访问到;若已经存在的元素被改变或删除了,则它们的传递到 callback 的值是 map 方法遍历到它们的那一时刻的值;而被删除的元素将不会被访问到。

    // 下面的语句返回什么呢:
    ["1", "2", "3"].map(parseInt);
    // 你可能觉的会是[1, 2, 3]
    // 但实际的结果是 [1, NaN, NaN]
    
    // 通常使用parseInt时,只需要传递一个参数.
    // 但实际上,parseInt可以有两个参数.第二个参数是进制数.
    // 可以通过语句"alert(parseInt.length)===2"来验证.
    // map方法在调用callback函数时,会给它传递三个参数:当前正在遍历的元素, 
    // 元素索引, 原数组本身.
    // 第三个参数parseInt会忽视, 但第二个参数不会,也就是说,
    // parseInt把传过来的索引值当成进制数来使用.从而返回了NaN.
    
    function returnInt(element) {
      return parseInt(element, 10);
    }
    
    ['1', '2', '3'].map(returnInt); // [1, 2, 3]
    // 意料之中的结果
    
    // 也可以使用简单的箭头函数,结果同上
    ['1', '2', '3'].map( str => parseInt(str) );
    
    // 一个更简单的方式:
    ['1', '2', '3'].map(Number); // [1, 2, 3]
    // 与`parseInt` 不同,下面的结果会返回浮点数或指数:
    ['1.1', '2.2e2', '3e300'].map(Number); // [1.1, 220, 3e+300]
    展开全文
  • 由于IE8及以下版本不支持Map对象,本文为程序猿们提供了有效的解决方法。 本文重写了Map对象,实现了常用的set, get, put, clear, remove, delete, forEach, has, containsKey, isEmpty, size 等方法,使用和声明...

    由于IE8及以下版本不支持Map对象,本文为程序猿们提供了有效的解决方法。

    本文重写了Map对象,实现了常用的set, get, put, clear, remove, delete, forEach, has, containsKey, isEmpty, size 等方法,使用和声明的方试和正常声明Map对象一样:

    var map = new Map();

    只需将下面代码拷入<script type="text/javascript"></script>中即可。

    该段代码是由码工具网(http://matools.com)提供,实现Map对象的代码如下,仅供参考:

    function Map() {
            this.elements = new Array();
            // 获取Map元素个数
            this.size = function() {
                return this.elements.length;
            },
            // 判断Map是否为空
            this.isEmpty = function() {
                return (this.elements.length < 1);
            },
            // 删除Map所有元素
            this.clear = function() {
                this.elements = new Array();
            },
            // 向Map中增加元素(key, value)
            this.put = function(_key, _value) {
                if (this.containsKey(_key) == true) {
                    if (this.containsValue(_value)) {
                        if (this.remove(_key) == true) {
                            this.elements.push({
                                key : _key,
                                value : _value
                            });
                        }
                    } else {
                        this.elements.push({
                            key : _key,
                            value : _value
                        });
                    }
                } else {
                    this.elements.push({
                        key : _key,
                        value : _value
                    });
                }
            },
            // 向Map中增加元素(key, value)
            this.set = function(_key, _value) {
                if (this.containsKey(_key) == true) {
                    if (this.containsValue(_value)) {
                        if (this.remove(_key) == true) {
                            this.elements.push({
                                key : _key,
                                value : _value
                            });
                        }
                    } else {
                        this.elements.push({
                            key : _key,
                            value : _value
                        });
                    }
                } else {
                    this.elements.push({
                        key : _key,
                        value : _value
                    });
                }
            },
            // 删除指定key的元素,成功返回true,失败返回false
            this.remove = function(_key) {
                var bln = false;
                try {
                    for (i = 0; i < this.elements.length; i++) {
                        if (this.elements[i].key == _key) {
                            this.elements.splice(i, 1);
                            return true;
                        }
                    }
                } catch (e) {
                    bln = false;
                }
                return bln;
            },
    
            // 删除指定key的元素,成功返回true,失败返回false
            this.delete = function(_key) {
                var bln = false;
                try {
                    for (i = 0; i < this.elements.length; i++) {
                        if (this.elements[i].key == _key) {
                            this.elements.splice(i, 1);
                            return true;
                        }
                    }
                } catch (e) {
                    bln = false;
                }
                return bln;
            },
            
            // 获取指定key的元素值value,失败返回null
            this.get = function(_key) {
                try {
                    for (i = 0; i < this.elements.length; i++) {
                        if (this.elements[i].key == _key) {
                            return this.elements[i].value;
                        }
                    }
                } catch (e) {
                    return null;
                }
            },
    
            // set指定key的元素值value
            this.setValue = function(_key, _value) {
                var bln = false;
                try {
                    for (i = 0; i < this.elements.length; i++) {
                        if (this.elements[i].key == _key) {
                            this.elements[i].value = _value;
                            return true;
                        }
                    }
                } catch (e) {
                    bln = false;
                }
                return bln;
            },
    
            // 获取指定索引的元素(使用element.key,element.value获取key和value),失败返回null
            this.element = function(_index) {
                if (_index < 0 || _index >= this.elements.length) {
                    return null;
                }
                return this.elements[_index];
            },
    
            // 判断Map中是否含有指定key的元素
            this.containsKey = function(_key) {
                var bln = false;
                try {
                    for (i = 0; i < this.elements.length; i++) {
                        if (this.elements[i].key == _key) {
                            bln = true;
                        }
                    }
                } catch (e) {
                    bln = false;
                }
                return bln;
            },
    
            // 判断Map中是否含有指定key的元素
            this.has = function(_key) {
                var bln = false;
                try {
                    for (i = 0; i < this.elements.length; i++) {
                        if (this.elements[i].key == _key) {
                            bln = true;
                        }
                    }
                } catch (e) {
                    bln = false;
                }
                return bln;
            },
            
            // 判断Map中是否含有指定value的元素
            this.containsValue = function(_value) {
                var bln = false;
                try {
                    for (i = 0; i < this.elements.length; i++) {
                        if (this.elements[i].value == _value) {
                            bln = true;
                        }
                    }
                } catch (e) {
                    bln = false;
                }
                return bln;
            },
    
            // 获取Map中所有key的数组(array)
            this.keys = function() {
                var arr = new Array();
                for (i = 0; i < this.elements.length; i++) {
                    arr.push(this.elements[i].key);
                }
                return arr;
            },
    
            // 获取Map中所有value的数组(array)
            this.values = function() {
                var arr = new Array();
                for (i = 0; i < this.elements.length; i++) {
                    arr.push(this.elements[i].value);
                }
                return arr;
            };
            
            /**
            * map遍历数组
            * @param callback [function] 回调函数;
            * @param context [object] 上下文;
            */
            this.forEach = function forEach(callback,context){
                context = context || window;
                
                //IE6-8下自己编写回调函数执行的逻辑
                var newAry = new Array();
                for(var i = 0; i < this.elements.length;i++) {
                    if(typeof  callback === 'function') {
                        var val = callback.call(context,this.elements[i].value,this.elements[i].key,this.elements);
                        newAry.push(this.elements[i].value);
                    }
                }
                return newAry;
            }
    
        }


    展开全文
  • javascript 自定义对象实现JavaMap对象功能 Java有集合,Map对象存储工具类,这些对象使用简易,但是在JavaScript中,你只能使用Array对象。 这里我创建一个自定义对象,这个对象内包含一个数组来存储数据...
  • 之前写了一个 JS 自定义对象实现JavaMap对象功能 ,但是遭到许多人的指责,大家都说JS中已经有相关的实现。 当然,我非常感谢大家的批评,但是由于本人JS功底并不是特别好,所以可能绕弯走了远路,大家就当...
  • Java有集合,Map对象存储工具类,这些对象使用简易,但是在JavaScript中,你只能使用Array对象。 这里我创建一个自定义对象,这个对象内包含一个数组来存储数据,数据对象是一个Key,可以实际存储的内容!   ...
  • map 实例 let arr = [{ name: 'xiaoWang', number: '01' }, { name: 'xiaoZhao', number: '02' } ] let newArr = arr.map(item => { return { label: item.nam
  • var map = new Map(); //设值 map.set("A","aaaa"); map.set("B","bbbb"); map.set("C","cccc"); map.set("D","dddd"); console.log(map) //结果 // 0: {"A" => "aaaa"} // 1: {"B" => "bbbb"} // 2: {"C" =&...
  • intro JS中的Object类型实际上是一种键值对映射(key-value pairs)。 但是JS中这种键值对映射有点问题:key只能为string类型。 为了和其他编程语言有相似的...set(key, value) - Map 新增键值对/修改值,可“链式调用...
  • vue中map遍历对象数组

    千次阅读 2020-08-10 09:21:18
    今天在写map遍历对象数组的时候,vue提示报错 :陷入了更新死循环,原因是遍历操作修改了原数组对象,导致map又一次触发,因此正确做法是map操作时不能改变原数组。 data() { return { names: [ { id: 1, name:...
  • 背景 我是用avue的form表单 做...这里尝试使用js进行修改 dicFormatter:(res)=>{ //这里手动将后台返回的string 类型title值 改为map类型进行select映射 因为input输入框的映射没弄出来 var r = "{'title':'"+re
  • js处理map对象的json

    千次阅读 2018-11-28 22:40:58
    其中map为: Map&lt;String, List&lt;TreeSelectModel&gt;&gt; map = new HashMap&lt;String, List&lt;TreeSelectModel&gt;&gt;(); 里面存的是list return JSONData.toJSON(map)...
  • 数组对象中每个对象添加一个字段-map用法和forEarch用法 1、js给对象添加变量属性 1、js创建一个对象或者在原有对象上添加一个已知属性,并给这个属性赋值,写法如下: let obj = {'a1':'a1'}; obj['a2'] = 'a2'; ...
  • js 修改对象的键名

    千次阅读 2019-10-15 16:12:57
    情景描述:替换数组对象的键名。 例如: const data = [{名称:'xxx',状态:'未接入'},{名称:'yyy',状态:'已接入'}] 要把名称改为 name ,状态改为 status。 通过 map 实现: const newData = results.map((item)=>...
  • map() 方法创建一个新数组,其结果是该数组的每个元素都调用一个提供的函数后返回的结果。 并举了个例子: var array1 = [1,4,9,16]; const map1 = array1.map(x => x *2); console.log(map1); 打印...
  • 本篇文章参考以下博文 JavaScript 标准之 Map对象 文章目录                   橘色 蓝色 红色 绿色
  • JS自定义 Map 键值对对象

    千次阅读 2013-07-18 08:52:25
    function Map() { this.keys = new Array(); this.data = new Array(); //添加键值对 this.set = function (key, value) { if (this.data[key] == null) {//如键不存在则身【键】数组添加键名 this.keys.push...
  • js中map和forEach的用法

    2021-03-18 20:13:31
    修改对象数组内容二、forEach1.简单数组2.对象数组3.forEach() 的 continue 与 break 前言 编码过程一直分不清map和forEach的区别,闲下来,弄几个例子研究一下。 一、map 1.简单数组 const a = [ 5, 7, 10, ] ...
  • js中map函数

    2020-11-19 10:06:42
    map的使用场景(上面的例子为了演示方便没有把map处理返回后的结果赋值给一个新数组,实际上要用map最好是要有新的数组来接收返回值,filter之类的函数同理,否则用forEach会更合适些,当然在使用forEach时需要注意...
  • js动态修改对象key

    2021-02-02 14:32:35
    背景:想使用layui的树形组件,但是后台返回的对象key和树形组件的属性名不一样,如果直接赋值,会导致树形显示不出title,所以找了个方法修改json对应的key //修改树节点与后台返回值对应的字段key //jsonObject :...
  • js修改数组对象里的对象属性名

    千次阅读 2020-12-08 11:03:20
    js修改数组对象里的对象属性名 有时候前端请求接口返回的数据,并不是我们想要的数据格式,一般我们会使用map等方法遍历修改属性名,但如果数据量很大或者数组对象的嵌套复杂,这种方法容易降低效率,下面我们使用...
  • js中map和forEach的区别

    千次阅读 2018-06-26 10:21:23
    首先map方法:map对一个数组对象进行操作时,一般是生成一个新的数组,可以在map中限制生成新数组的条件,有返回值forEach方法:forEach方法一般是对原有的数组进行操作,没有返回值示例下方提供了一个数组,如...
  • 本文实例讲述了js/jquery遍历对象和数组的方法。分享给大家供大家参考,具体如下: JS forEach方法 arr[].forEach(function(value,index,array){  //do something }) 参数:value数组的当前项,index当前项的...
  • JavaScript中map()函数的用法

    千次阅读 2017-10-13 19:07:29
    map 方法 (Array) (JavaScript)   对数组的每个元素调用定义的回调函数并返回包含结果的数组。 语法 array1.map(callbackfn[, thisArg]) ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 87,925
精华内容 35,170
关键字:

js中map修改对象