一、input 焦点定位

1、定位input:(this.$refs.searchInput as HTMLInputElement).focus();
 
2、定位search,根据css选择器:
(document.querySelector('.search .van-field__control') as HTMLInputElement)!.focus()
<input
ref="searchInput"
class="search"
autofocus>
 
二、截取字符串
截取字段ClassName的字符,ClassName长度大于4时,取前4位字符,其余显示...
ClassName.length > 4 ? ClassName.substring(0,4) + '...'
控制字符显示小数点后两位
testNumber.toFixed(2)
 
三、vue手机号码344格式化
Mobile: 17853560672
userPhone: Mobile.replace(/\s/g, '').replace(/(\d{3})(\d{0,4})(\d{0,4})/, '$1 $2 $3') }
 
四、vue字符串转换
let testString = "230.98"---转成数字类型
   Number(testString)  // 230.98
   parseInt(testString) // 230
   parseFloat(testString) // 230.98
   + testString //230.98
   ~~ testString //230
var testArray = [ 1, 2, 3 ] ---数组转成字符串
   testArray.join(',')  // “1,2,3”
   testArray.join('  ')  // “1 2 3”
 
五、数组操作
1、shift:删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined 
  1. var a = [1,2,3,4,5];   
  2. var b = a.shift();     //a:[2,3,4,5] b:1  
2、unshift:将参数添加到原数组开头,并返回数组的长度
  1. var a = [1,2,3,4,5];   
  2. var b = a.unshift(-2,-1);    //a:[-2,-1,1,2,3,4,5] b:7  
3、pop:删除原数组最后一项,并返回删除元素的值;如果数组为空则返回undefined
  1. var a = [1,2,3,4,5];   
  2. var b = a.pop(); //a:[1,2,3,4] b:5  
4、push:将参数添加到原数组末尾,并返回数组的长度
  1. var a = [1,2,3,4,5];   
  2. var b = a.push(6,7);    //a:[1,2,3,4,5,6,7] b:7  
 
5、concat:返回一个新数组,是将参数添加到原数组中构成的 
  1. var a = [1,2,3,4,5];   
  2. var b = a.concat(6,7);    //a:[1,2,3,4,5] b:[1,2,3,4,5,6,7]  
 
6、splice(start,deleteCount,val1,val2,...):从start位置开始删除deleteCount项,并从该位置起插入val1,val2,... 
  1. var a = [1,2,3,4,5];       
  2. var b = a.splice(2,2,7,8,9);     //a:[1,2,7,8,9,5] b:[3,4]   
  3. var b = a.splice(0,1);    //同shift   
  4. a.splice(0,0,-2,-1);   var b = a.length;       //同unshift   
  5. var b = a.splice(a.length-1,1);    //同pop   
  6. a.splice(a.length,0,6,7); var b = a.length;    //同push 
 
7、reverse:将数组反序 
  1. var a = [1,2,3,4,5];   
  2. var b = a.reverse();       //a:[5,4,3,2,1] b:[5,4,3,2,1]  
 
8、sort(orderfunction):按指定的参数对数组进行排序 
  1. var a = [1,2,3,4,5];   
  2. var b = a.sort();     //a:[1,2,3,4,5] b:[1,2,3,4,5]
 
9、slice(start,end):返回从原数组中指定开始下标到结束下标之间的项组成的新数组 
  1. var a = [1,2,3,4,5];   
  2. var b = a.slice(2,5);     //a:[1,2,3,4,5] b:[3,4,5]  
 
10、join(separator):将数组的元素组起一个字符串,以separator为分隔符,省略的话则用默认用逗号为分隔符 
  1. var a = [1,2,3,4,5];   
  2. var b = a.join("|");      //a:[1,2,3,4,5] b:"1|2|3|4|5"  
 
六、页面滚动事件监听,超出一屏显示“返回”
mounted () {
     this.$nextTick(() => {
          window.addEventListener('scroll', this.handleScroll, true) // 监听滚动
    })
},
destroyed () {
         window.removeEventListener('scroll', this.handleScroll)
},
methods: {
   handleScroll () {
      let scrollObj = document.getElementById('contentBox') as HTMLElement  // 根据绑定div的id获取滚动区域
      let scrollHeight = scrollObj.scrollHeight // 滚动条的总高度
      let scrollObjTop = scrollObj.scrollTop // contentDiv到头部的距离
      console.log('scrollHeight', scrollHeight)
      console.log('scrollObjTop', scrollObjTop)
      if (scrollObjTop > 850) {   // 850是滚动div的一屏高度,超出一屏时isShowBack设置为true
           this.isShowBack = true
      } else {
          this.isShowBack = false
      }
  },
},

杂七杂八的JavaScript的更多相关文章

  1. javascript动态添加本地文件列表信息

    工作需要做了一个动态添加列表页面的小demo.用到了杂七杂八的javascript小知识. 而且并没有涉及到工作中的具体情境.有些通用,所以暂且罗列到这里.以后需要的时候可以直接拿来用. 看源码总是让 ...

  2. 【JAVASCRIPT】React学习- 杂七杂八

    摘要 记录 React 学习中的小细节 setState setState 有一定的时间延迟,如果需要保证 setState 之后执行某些动作,可以采用以下方法 this.setState({ vis ...

  3. [原创作品] javascript 实现的web分页器原理

    很久没有写博客了,因为最近忙于一些杂七杂八的事情.不过,互联网的价值在于信息共享,因为共享,所以互联网才能飞快发展.博主建了一个技术共享qq群:164858883,因为目前人数还比较少,活跃度还不是很 ...

  4. JavaScript动漫作品(闭幕)

    笔者:Steven Riche 发布时间:2014年2一个月18 原文链接:http://code.tutsplus.com/tutorials/javascript-animation-that-w ...

  5. ArcGIS API for JavaScript 4.2学习笔记[0] AJS4.2概述、新特性、未来产品线计划与AJS笔记目录

    放着好好的成熟的AJS 3.19不学,为什么要去碰乳臭未干的AJS 4.2? 4.2全线基础学习请点击[直达] 4.3及更高版本的补充学习请关注我的博客. ArcGIS API for JavaScr ...

  6. 【前端安全】JavaScript防流量劫持

    劫持产生的原因和方式 在网页开发的访问过程中,http是我们主要的访问协议.我们知道http是一种无状态的连接.即没有验证通讯双方的身份,也没有验证信息的完整性,所以很容易受到篡改.运营商就是利用了这 ...

  7. JavaScript有关的10个怪癖和秘密(转)

    数据类型和定义 -------------------------------------------------------------------------------------------- ...

  8. javascript 基础篇 随课笔记

    !DOCTYPE HTML><html><head><meta name="content-type" content="text/h ...

  9. JavaScript中字符串类型

    字符串类型 字符串介绍 这是程序里面使用最为广泛的一-种类型.在JavaScript里面, 可以使用单引号,也可以使用双引号: 字符串这种数据类型非常霸道,它和其他数据类型相加都会被转换后才为字符串类 ...

随机推荐

  1. leetcode301

    class Solution { public List<String> removeInvalidParentheses(String s) { List<String> a ...

  2. leetcode1029

    class Solution(object): def twoCitySchedCost(self, costs: 'List[List[int]]') -> int: costs = sort ...

  3. poi横纵导出

    dao <select id="selectTargetModel" resultMap="targetMap"> select si.SHOP_N ...

  4. ABAP-表中数据的横向累加

    GLT0 等表中数据的横向累加 ——塞依SAP培训   在 ABAP 的 GLT0.FAGLFLEXT 等余额表中,用诸如 TSL01.TSL02 …… TSL16 等字段记录了 16 个期间的发生额 ...

  5. GIT BRANCHING

    GIT BRANCHING generalizations Let's take a moment to review the main concepts and commands from the ...

  6. 源码解析之AQS源码解析

    要理解Lock首先要理解AQS,而要理解并发类最好的方法是先理解其并发控制量不同值的含义以及该类运作流程,然后配合一步步看源码.该类有一个重要的控制量是WaitStates,节点的状态值. /** w ...

  7. 牛客网-乌龟跑步-(四维dfs)

    链接:https://ac.nowcoder.com/acm/problem/15294来源:牛客网 题目描述 有一只乌龟,初始在0的位置向右跑. 这只乌龟会依次接到一串指令,指令T表示向后转,指令F ...

  8. HLSL ddx / ddy

    [HLSL ddx / ddy] 在光栅化的时刻,GPUs会在同一时刻并行运行很多Fragment Shader,但是并不是一个pixel一个pixel去执行的,而是将其组织在2x2的一组pixels ...

  9. QUARTZ系列之一-基础概念(Scheduler/Job/JobDetail/Trigger)

    摘抄自quartz官方文档: The key interfaces of the Quartz API are: Scheduler - the main API for interacting wi ...

  10. EasyUI DataGrid设置列宽为百分比导致表头和内容错位的解决方法

    在DataGrid中设置列宽为百分比一般是没有问题的 columns: [[{ title: '内容', field: '__EMPTY', width: '40%' }, { title: '隐患级 ...