zoukankan      html  css  js  c++  java
  • 前端总结

    前端总结

    # es6 列表去重
    # 方法一 
    if (shareMaps[n.eaid].indexOf(`${n.user}`) < 0) {
        shareMaps[n.eaid].push(`${n.user}`)
        }
    
    # 方法二
    shareMaps[n.eaid].push(`${n.user}`)
    shareMaps[n.eaid] = Array.from(new Set(shareMaps[n.eaid]))
    
    # 列表内的值相加
    blanceArr.reduce((a, b) => a + b)
    
    # Vue 中对渲染的数据进行处理
    <template v-else>{{ cleanRow(scope.row.balance) }}</template>
    
    cleanRow (scope) {
        if (parseInt(scope).toLocaleString() === 'NaN') {
            return ''
        } else {
            return parseInt(scope).toLocaleString()
        }
      },
    
    # 对 Array 数据的处理,变成列表的形式
    this.fundMap = res.reduce(function (map, obj) {
    	map[obj.amac_id] = obj
        return map
    }, {})
    
    # 解构赋值
    ... 操作,可以把对象拆开
    {...{}} or {...[]}
    
    # 删除字典中的元素
    delete dict[key]
    
    # 删除列表中的元素
    方法一:delete Arry[index]    # 会删除元素,但是元素的位置还会保存,列表的长度不会变化
    
    方法二:
    for (let i = 0; i < otherColumns.length; i++) {
        if (this.otherAddColumns.indexOf(otherColumns[i]) < 0) {
              this.otherAddColumns.push(otherColumns[i])
        } else {
              otherColumns.splice(i, 1)
              i--
            }
         }
    # 使用 splice 删除,可以删除位置,会更改列表的长度,如果是有连续两个相同的,第二个在使用 for 循环的时候会直接隔过去,所以最后要使用 i--
    
    # js 数组 map 方法
    map 映射,基本用法跟 forEach 方法类似
    Array.map(item => {})    # item 就是列表中的每个元素
    
    # Object.keys()
    方法会返回一个由一个给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和正常循环遍历该对象时返回的顺序一致,如果是字典,返回的值是字典中所有的key,如果对象是数组,则返回所有的 index,
    Object.keys(Array)
    Object.keys(dict)    # 获取字典中所有的key
    Object.values(dict)    # 获取字典中所有的value
    
    # js 中判断一个值是不是在列表中
    Object.keys(Array) >= 0
                
    # js 判断一个值是不是在 字典中
    value in this.map
    或者  myObj.hasOwnProperty('key')
    

    前端框架总结

    # element 
    # 取消表格悬浮高亮
    tr {pointer-events: none;}
    

    导出csv文件

    Download () {
            const datas = [...this.data]
            datas.map(item => {
              delete item['other_add_columns']
              delete item['custodian_update_freq']
            })
        	# exportData 是一个需要导出的数据,如果数据中有不需要导出的数据,需要把数据删除掉
            const exportData = JSON.parse(JSON.stringify(this.data))
            const boolMap = { true: 'yes', false: 'No' }
            exportData.map(d => {
              d.is_fund_alive = boolMap[d.is_fund_alive]
            })
            const header = {
              id: 'id',
              amac_id: 'AMACID',
              fund_name: 'FundName',
              abbr_cn: 'CAbbr',
            }
            exportData.unshift(header)    # 配置表格头
        	# header 传入的是一个列表,Object.keys()获取字典中的所有key值,生成一个列表
        	# skipHeader 是否使用原来的抬头
            const ws = XLSX.utils.json_to_sheet(exportData, {
              header: Object.keys(header), skipHeader: true
            })
            const wb = XLSX.utils.book_new()
            XLSX.utils.book_append_sheet(wb, ws, 'Sheet1')
            XLSX.writeFile(wb, 'Fund.xlsx', { type: 'base64', bookType: 'xlsx' })
          },
    
  • 相关阅读:
    nRF5 SDK for Mesh(二) Getting started 快速开始
    QT 简单 TCP 通信,发送数据到服务器
    Bluetooth® Low Energy Beacons
    CC2540 低功耗串口, POWER_SAVING 模式 下 串口 0 的使用
    LWIP network interface 网卡 初始化 以 STM32 为例子 后面会有 用 2G 或者4G 模块 用 PPP拨号的 形式 虚拟出网卡 所以先以 这个为 前提
    R 语言入门
    Django 框架
    Windows 下 Django 安装
    windows 下搭建 git 服务器 copssh+git
    python Pystaller 将python文件打包成exe
  • 原文地址:https://www.cnblogs.com/whkzm/p/14168422.html
Copyright © 2011-2022 走看看