一、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. leetcode142

    public class Solution { public ListNode detectCycle( ListNode head ) { if( head == null || head.next ...

  2. react-native-pushy 热更新

    教程来源于官网: 准备工作 添加热更新功能 发布应用 说明: 在往 pushy 发布了安装包之后,后续都是通过下面 2个命令来发布 热更新版本的,而不是再次发布安装包, 在使用热更新服务更新版本的时候 ...

  3. PHP 调试打印输出变量

    var_dump ($row); echo "hello"; echo "\n"; print_r ($arr); php 数组 对象 $arr = json_ ...

  4. Python面向对象编程(上)

    Python不仅支持面向过程编程,同时也支持面向对象编程.面向工程就是分析解决问题所需的步骤,然后用函数把这些步骤逐一实现,使用的时候再一个个调用函数就可以.面向对象则是把解决的问题按照一定规则划分为 ...

  5. canvas刮刮乐游戏等

    裁剪 ctx.clip():当前路径外的区域不再绘制 <canvas id="cans" width=500 height=500></canvas> &l ...

  6. jQuery开发工具

    开发工具:MyEclipse2014 + aptana插件 下载apada 放到MyEclipse的路径   https://segmentfault.com/a/1190000005711923   ...

  7. Mysql的时间类型问题

    时间类型有time, date, datetime, timestamp 如Mysql官方文档所述: time 没有date,date没有time,datetime是date和time的集合, 而ti ...

  8. [leetcode]64. Minimum Path Sum最小路径和

    Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which ...

  9. C++ 实现分数的四则运算

    对分数求加减乘除,以及化简 #include<iostream> #include<math.h> using namespace std; struct Fraction{ ...

  10. jenkins源码管理git分支参数化

    多个分支来回切换构建时,每次都需要去很多个job里面改分支名称,比较费时,分支参数化后可以只改一处就ok啦 步骤: 1.进入系统管理--系统设置 2.勾选全局变量,然后输入分支变量名和对应的分支名称 ...