js 基础

不要依赖在函数内给传进来的数组赋值

var arr = [ { id: '1'}, { id: '2' } ]
this._transform(this.createUserIds, arr)

function _transform(data, list) {
  data = list.map(e => e.id) // 这样直接给形参赋值,改变不了this.createUserIds
}

forEach/map改变原数组?

          // list会改变
            list = list.map(item =>
                Object.assign({}, item, { dynamicValue: item.paramValue ? false : true })
            )
            
          // list不会改变,他只是操作item的副本
            list.forEach(item => {
                item = Object.assign({}, item, { dynamicValue: item.paramValue ? false : true })
                console.log(item)
            })

Array.some( )和Array.every( )

Array.some( )

检测数组里,是否存在一项为“符合回调函数”的。
(第一项符合,则不检查后面的,直接返回true了)

  arr.some(item => item.selected)
// 这个是用来检查arr是否存在那么一项——他的selected属性是true的

Array.every( )

检测数组里,是否存在 一项为“符合回调函数”的。
(必须每一项都符合!若第一项不符合,就直接返回true了)

  arr.every(item => item.selected)
// 这个是用来检查arr是否存在所有项——他们的selected属性都是true的
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容