写代码的技巧方法(日常整理)

切割单位,进行单位换算(在小数点后面有超过三位数字时,四舍五入保留三位小数):

  • str.split.('a'), 当a不存在的时候,就会生成只有一个元素的数组,当str就是a的时候就会生成长度为2的数组,['','']
storage_filter(storage) {
      const split = /(-?[0-9.]+)\s*(.*)/.exec(storage);
      console.log(split);
      const unit = split[2];
      const amount = split[1];
      let result;
      if (unit === 'Gi') {
        result = amount / 1;
      } else if (unit === 'Mi') {
        result = amount / 1024;
      } else if (unit === 'm') {
        result = amount / 1024 / 1024 / 1024 / 1000;
      }
      console.log(result);
      if (result.toString().split('.')[1] && result.toString().split('.')[1].length > 3) {
        result = result.toFixed(3);
      }
      result = `${result} GiB`;

      return result;
    },
split

vue2中监听函数的写法

rows: {
      immediate: true,
      handler(rows) {
        console.log(rows)
      },
    },

父传子的数据,子不宜直接进行改变,但是又要实现双向绑定

解决方法:

<GBform v-bind="searchFormConfig" v-model="formData"/>
 const formData = reactive({
      id: '',
      name: '',
      password: '',
      sport: '',
      createTime: ''
    })
props: {
    modelValue: {
      type: Object,
      required: true
    }
},
  emits: ['update:modelValue'],
  setup(props, { emit }) {
    const formData = ref({ ...props.modelValue })
    watch(
      formData,
      (newValue) => {
        console.log(newValue)
        emit('update:modelValue', newValue)
      },
      {
        deep: true
      }
    )

    return {
      formData
    }
  }

element表单里面卡插槽

data


往插槽里放东西

注册全局函数之Utc时间格式化

  • 实现全局类


  • 格式化方法实现


方法名字符串拼接的时候,要求中间拼接的字符串首字母大写

  • 将一个字符串首字母转换成大写的方式
function firstToUpper1(str) {
//先去掉字符串两边的空格---全部转换成小写--将首字母大写之后进行覆盖
  return str.trim().toLowerCase().replace(str[0], str[0].toUpperCase())
}
//注意哦,这里的字符串前后是有空格的
let arr = '  agfgfvsgv  '
const result = firstToUpper1(arr)
console.log(result)
  • 实现字符串的翻转
let str = 'ghsahv'
//先将字符串转换成数组,调用反转函数,然后再拼接成字符串
let newStr = str.split('').reverse().join('')
//newStr
console.log(newStr)
  • 实现数组去重
var str = 'asdffgwqqwssaxcvfghhdqwsda'
function quchong(str) {
  var newStr = ''
  for (var i = 0, len = str.length; i < len; i++) {
      //(str.indexOf(str[i]) == i)   也行哦
     if (newStr.indexOf(str[i]) == -1) {
      newStr += str[i]
    }
  }
  return newStr
}
console.log(quchong(str))

跨级使用插槽


image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Vuejs部分 1.vue优点? 答:轻量级框架:只关注视图层,是一个构建数据的视图集合,大小只有几十kb; 简单...
    NaN2019阅读 4,645评论 0 0
  • 前言 整理前端常用的一些函数 时间类 UTC() 方法接受的参数同日期构造函数接受最多参数时一样,返回从1970-...
    前端_逗叔阅读 8,404评论 0 1
  • 1.vue优点? 答:轻量级框架:只关注视图层,是一个构建数据的视图集合,大小只有几十kb;简单易学:国人开发,中...
    Grit_1024阅读 4,929评论 0 25
  • 最全前端开发面试问题及答案整理 前端开发面试知识点大纲: HTML&CSS: 对Web标准的理解、浏览器内核差异、...
    杀个程序猿祭天阅读 5,665评论 0 1
  • 16宿命:用概率思维提高你的胜算 以前的我是风险厌恶者,不喜欢去冒险,但是人生放弃了冒险,也就放弃了无数的可能。 ...
    yichen大刀阅读 11,543评论 0 4

友情链接更多精彩内容