博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
javascript 代码段整理
阅读量:5328 次
发布时间:2019-06-14

本文共 3797 字,大约阅读时间需要 12 分钟。

这篇文章将用来收集整理常用的javascript代码段/////

//常用js方法收集整理 /////常用js方法收集整理/ // //////                 // // //// 常用js方法收集整理 // //常用js方法收集整理/   // /////常用js方法收集整理 //////常用js方法收集整理///////
/**     * 两个数组中的整数进行加或减     * 例如: a = [4, 5, 7, 9]; b = [5, 6, 100, 1];     * a - b 的对应值     * type: 表示要进行加还是减, 默认是加     */    var subtractArray = function(a, b, type) {        var tp = type !== true ? "+" : "-";        return a.length ? [eval(a.shift()+tp+b.shift())].concat(this.subtractArray(a,b, type)) : [];    }
/**     * 判断字符串是否存在于给定数组中     * needle: 要判断的字符串     * array: 放入的数组     * bool: 如果为true, 则返回needle在array中的位置     */    var inArray = function (needle, array, bool) {        if(typeof needle=="string" || typeof needle=="number"){             for(var i in array){                if(needle===array[i]){                    if(bool){                        return i;                    }                    return true;                }            }            return false;        }    },
var getDataType = function(data) {    if(typeof data !=='object') {
/*这里可以判断是否是string, number, boolean*/      return typeof data;    } else {      if(data instanceof Array) {        return 'array';      } else if(data instanceof Object) {        return 'object';      } else {        return 'null';      }    }  },
function getNavigatorLanguage() {
//判断浏览器接受的语言    if((typeof browser_language) !== "undefined" && browser_language !== null) {
// ie      var lang = navigator.systemLanguage.toLowerCase();    } else {
// firefox chorme etc.       var lang = navigator.language.toLowerCase();    }    return lang;  }
// 获取浏览器名称和版本 var getBrowser= (function(){    var ua= navigator.userAgent, tem,    M= ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i) || [];    if(/trident/i.test(M[1])){        tem=  /\brv[ :]+(\d+)/g.exec(ua) || [];        return 'IE '+(tem[1] || '');    }    if(M[1]=== 'Chrome'){        tem= ua.match(/\b(OPR|Edge)\/(\d+)/);        if(tem!= null) return tem.slice(1).join(' ').replace('OPR', 'Opera');    }    M= M[2]? [M[1], M[2]]: [navigator.appName, navigator.appVersion, '-?'];    if((tem= ua.match(/version\/(\d+)/i))!= null) M.splice(1, 1, tem[1]);    return M.join(' ');})();

 

// 判断浏览器是否在当前页面,当用户切换浏览器tab标签时,本页面有不同的状态变化。

var hidden, state, visibilityChange;  if (typeof document.hidden !== "undefined") {     hidden = "hidden";     visibilityChange = "visibilitychange";     state = "visibilityState"; } else if (typeof document.mozHidden !== "undefined") {     hidden = "mozHidden";     visibilityChange = "mozvisibilitychange";     state = "mozVisibilityState"; } else if (typeof document.msHidden !== "undefined") {     hidden = "msHidden";     visibilityChange = "msvisibilitychange";     state = "msVisibilityState"; } else if (typeof document.webkitHidden !== "undefined") {     hidden = "webkitHidden";     visibilityChange = "webkitvisibilitychange";     state = "webkitVisibilityState"; }// 添加监听器,在title里显示状态变化document.addEventListener(visibilityChange, function() {    // 切换浏览器的tab, 查看浏览器title位置的名称变化    document.title = document[state];}, false);

 

//任意范围的随机数生成函数如下

function getRandomArbitrary(min, max) {  return Math.random() * (max - min) + min;}getRandomArbitrary(1.5, 6.5);// 2.4942810038223864

 

//任意范围的随机整数生成函数如下

function getRandomInt(min, max) {  return Math.floor(Math.random() * (max - min + 1)) + min;}getRandomInt(1, 6) // 5

 

//返回随机字符

function random_str(length) {  var ALPHABET = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';  ALPHABET += 'abcdefghijklmnopqrstuvwxyz';  ALPHABET += '0123456789-_';  var str = '';  for (var i=0; i < length; ++i) {    var rand = Math.floor(Math.random() * ALPHABET.length);    str += ALPHABET.substring(rand, rand + 1);  }  return str;}random_str(6) // "NdQKOr"

 

转载于:https://www.cnblogs.com/Zell-Dinch/articles/4580788.html

你可能感兴趣的文章
题1简化版
查看>>
linux清空日志文件内容 (转)
查看>>
jsp中对jstl一些标签的引用方式
查看>>
100. Same Tree
查看>>
[转]java classLoader 体系结构
查看>>
mkdir命令(转)
查看>>
安卓第十三天笔记-服务(Service)
查看>>
css3学习笔记之背景
查看>>
Servlet接收JSP参数乱码问题解决办法
查看>>
【bzoj5016】[Snoi2017]一个简单的询问 莫队算法
查看>>
[dpdk] 熟悉SDK与初步使用 (二)(skeleton源码分析)
查看>>
Ajax : load()
查看>>
分布式版本控制系统
查看>>
Java出现OutOfMemoryError
查看>>
可行性报告
查看>>
[预打印]使用vbs给PPT(包括公式)去背景
查看>>
HTML5学习笔记简明版(1):HTML5介绍与语法
查看>>
使用IntelliJ IDEA 配置Maven
查看>>
django基础入门(3)django中模板
查看>>
JAVA数据转换常用方法
查看>>