EdwardS.Cooke,Jr.《Global Objects》作品简介与读书感悟

前言因为工作中经常用到这些方法,所有便把这些方法进行了总结。JavaScript1.type类型判断isString(o){//是否字符串returnObject.prototype.toString

前言

因为工作中经常用到这些方法,所有便把这些方法进行了总结。

JavaScript

1. type 类型判断

isString (o) { //是否字符串return Object.prototype.toString.call(o).slice(8,-1) === &39;}isNumber (o) { //是否数字return Object.prototype.toString.call(o).slice(8,-1) === &39;}isBoolean (o) { //是否booleanreturn Object.prototype.toString.call(o).slice(8,-1) === &39;}isFunction (o) { //是否函数return Object.prototype.toString.call(o).slice(8,-1) === &39;}isNull (o) { //是否为nullreturn Object.prototype.toString.call(o).slice(8,-1) === &39;}isUndefined (o) { //是否undefinedreturn Object.prototype.toString.call(o).slice(8,-1) === &39;}isObj (o) { //是否对象return Object.prototype.toString.call(o).slice(8,-1) === &39;}isArray (o) { //是否数组return Object.prototype.toString.call(o).slice(8,-1) === &39;}isDate (o) { //是否时间return Object.prototype.toString.call(o).slice(8,-1) === &39;}isRegExp (o) { //是否正则return Object.prototype.toString.call(o).slice(8,-1) === &39;}isError (o) { //是否错误对象return Object.prototype.toString.call(o).slice(8,-1) === &39;}isSymbol (o) { //是否Symbol函数return Object.prototype.toString.call(o).slice(8,-1) === &39;}isPromise (o) { //是否Promise对象return Object.prototype.toString.call(o).slice(8,-1) === &39;}isSet (o) { //是否Set对象return Object.prototype.toString.call(o).slice(8,-1) === &39;}isFalse (o) {if (!o || o === &39; || o === &39; || o === &39; || o === &39;) return truereturn false}isTrue (o) {return !this.isFalse(o)}isIos () {var u = navigator.userAgent;if (u.indexOf(&39;) > -1 || u.indexOf(&39;) > -1) {//安卓手机// return &34;;return false} else if (u.indexOf(&39;) > -1) {//苹果手机// return &34;;return true} else if (u.indexOf(&39;) > -1) {//iPad// return &34;;return false} else if (u.indexOf(&39;) > -1) {//winphone手机// return &34;;return false}else{return false}}isPC () { //是否为PC端var userAgentInfo = navigator.userAgent;var Agents = [&34;,&34;, &34;,&34;, &34;,&34;];var flag = true;for (var v = 0; v < Agents.length; v++) {if (userAgentInfo.indexOf(Agents[v]) > 0) {flag = false;break;}}return flag;}browserType(){var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串var isOpera = userAgent.indexOf(&34;) > -1; //判断是否Opera浏览器var isIE = userAgent.indexOf(&34;) > -1 && userAgent.indexOf(&34;) > -1 && !isOpera; //判断是否IE浏览器var isIE11 = userAgent.indexOf(&39;) > -1 && userAgent.indexOf(&34;) > -1;var isEdge = userAgent.indexOf(&34;) > -1 && !isIE; //判断是否IE的Edge浏览器var isFF = userAgent.indexOf(&34;) > -1; //判断是否Firefox浏览器var isSafari = userAgent.indexOf(&34;) > -1 && userAgent.indexOf(&34;) == -1; //判断是否Safari浏览器var isChrome = userAgent.indexOf(&34;) > -1 && userAgent.indexOf(&34;) > -1; //判断Chrome浏览器if (isIE) {var reIE = new RegExp(&34;);reIE.test(userAgent);var fIEVersion = parseFloat(RegExp[&34;]);if(fIEVersion == 7) return &34;else if(fIEVersion == 8) return &34;;else if(fIEVersion == 9) return &34;;else if(fIEVersion == 10) return &34;;else return &34;//IE版本过低}if (isIE11) return &39;;if (isEdge) return &34;;if (isFF) return &34;;if (isOpera) return &34;;if (isSafari) return &34;;if (isChrome) return &34;;}checkStr (str,type) {switch (type) {case &39;: //手机号码return /^1[3|4|5|6|7|8|9][0-9]{9}$/.test(str);case &39;: //座机return /^(0\d{2,3}-\d{7,8})(-\d{1,4})?$/.test(str);case &39;://身份证return /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/.test(str);case &39;: //密码以字母开头,长度在6~18之间,只能包含字母、数字和下划线return /^[a-zA-Z]\w{5,17}$/.test(str)case &39;://邮政编码return /[1-9]\d{5}(?!\d)/.test(str);case &39;://QQ号return /^[1-9][0-9]{4,9}$/.test(str);case &39;: //邮箱return /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/.test(str);case &39;: //金额(小数点2位)return /^\d*(?:\.\d{0,2})?$/.test(str);case &39;: //网址return /(http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+])?/.test(str)case &39;://IPreturn /((?:(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d))/.test(str);case &39;://日期时间return /^(\d{4})\-(\d{2})\-(\d{2}) (\d{2})(?:\:\d{2}|:(\d{2}):(\d{2}))$/.test(str) || /^(\d{4})\-(\d{2})\-(\d{2})$/.test(str)case &39;://数字return /^[0-9]$/.test(str);case &39;: //英文return /^[a-zA-Z]+$/.test(str);case &39;: //中文return /^[\u4E00-\u9FA5]+$/.test(str);case &39;: //小写return /^[a-z]+$/.test(str);case &39;: //大写return /^[A-Z]+$/.test(str);case &39;://HTML标记return /<(&34;]*&39;[^&39;|[^&34;>])*>/.test(str);default:return true;}// 严格的身份证校验isCardID(sId) {if (!/(^\d{15}$)|(^\d{17}(\d|X|x)$)/.test(sId)) {alert(&39;)return false}//身份证城市var aCity={11:&34;,12:&34;,13:&34;,14:&34;,15:&34;,21:&34;,22:&34;,23:&34;,31:&34;,32:&34;,33:&34;,34:&34;,35:&34;,36:&34;,37:&34;,41:&34;,42:&34;,43:&34;,44:&34;,45:&34;,46:&34;,50:&34;,51:&34;,52:&34;,53:&34;,54:&34;,61:&34;,62:&34;,63:&34;,64:&34;,65:&34;,71:&34;,81:&34;,82:&34;,91:&34;};if(!aCity[parseInt(sId.substr(0,2))]) { alert(&39;)return false}// 出生日期验证var sBirthday=(sId.substr(6,4)+&34;+Number(sId.substr(10,2))+&34;+Number(sId.substr(12,2))).replace(/-/g,&34;), d = new Date(sBirthday)if(sBirthday != (d.getFullYear()+&34;+ (d.getMonth()+1) + &34; + d.getDate())) {alert(&39;)return false}// 身份证号码校验var sum = 0, weights =[7,老舍简介及作品简介,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2], codes = &34;for (var i = 0; i < sId.length - 1; i++) {sum += sId[i] * weights[i];}var last = codes[sum % 11]; //计算出来的最后一位身份证号码if (sId[sId.length-1] != last) { alert(&39;)return false}return true}}

2. Date

3. Array

4. String 字符串操作

5. Number

6. Http

** * @param{setting} */ajax(setting){//设置参数的初始值var opts={method: (setting.method || &34;).toUpperCase(),//请求方式url: setting.url || &34;,// 请求地址async: setting.async || true,// 是否异步dataType: setting.dataType || &34;,// 解析方式data: setting.data || &34;,// 参数success: setting.success || function(){},// 请求成功回调error: setting.error || function(){} // 请求失败回调}// 参数格式化function params_format (obj) {var str = &39;for (var i in obj) {str += i + &39; + obj[i] + &39;}return str.split(&39;).slice(0,-1).join(&39;)}// 创建ajax对象var xhr=new XMLHttpRequest();// 连接服务器open(方法GET/POST,请求地址, 异步传输)if(opts.method == &39;){xhr.open(opts.method,opts.url + &34; + params_format(opts.data),opts.async);xhr.send();}else{xhr.open(opts.method,opts.url,opts.async);xhr.setRequestHeader(&34;,&34;);xhr.send(opts.data);}/*** 每当readyState改变时,就会触发onreadystatechange事件** readyState属性存储有XMLHttpRequest的状态信息** 0 :请求未初始化** 1 :服务器连接已建立** 2 :请求已接受** 3 : 请求处理中** 4 :请求已完成,且相应就绪*/xhr.onreadystatechange = function() {if (xhr.readyState === 4 && (xhr.status === 200 || xhr.status === 304)) {switch(opts.dataType){case &34;:var json = JSON.parse(xhr.responseText);opts.success(json);break;case &34;:opts.success(xhr.responseXML);break;default:opts.success(xhr.responseText);break;}}}xhr.onerror = function(err) {opts.error(err);}}/** * @param{url} * @param{setting} * @return {Promise} */fetch(url,setting) {//设置参数的初始值let opts={method: (setting.method || &39;).toUpperCase(),//请求方式headers : setting.headers|| {},// 请求头设置credentials : setting.credentials|| true,// 设置cookie是否一起发送body: setting.body || {}, mode : setting.mode|| &39;,// 可以设置 cors,no-cors,same-originredirect : setting.redirect|| &39;,// follow,error,manualcache : setting.cache|| &39; // 设置 cache 模式 (default,reload,no-cache)}let dataType = setting.dataType || &34;,// 解析方式data = setting.data || &34; // 参数// 参数格式化function params_format (obj) {var str = &39;for (var i in obj) {str += `${i}=${obj[i]}&`}return str.split(&39;).slice(0,-1).join(&39;)}if (opts.method === &39;) {url = url + (data?`?${params_format(data)}`:&39;)}else{setting.body = data || {}}return new Promise( (resolve,reject) => {fetch(url,opts).then( async res => {let data = dataType === &39; ? await res.text() :dataType === &39; ? await res.blob() : await res.json() resolve(data)}).catch( e => {reject(e)})})}

作者资料:吴承恩(1500年-1582年),字汝忠,号射阳山人。汉族,淮安府山阳县(今江苏省淮安市淮安区)人,祖籍安徽省桐城县高甸(今枞阳县雨坛乡高甸),以祖先聚居枞阳高甸,故称高甸吴氏。因随祖父迁徙至淮安府(今江。

7. DOM

$ (selector){ var type = selector.substring(0,1);if (type === &&39;.&39;querySelectorAll&39;querySelectorAll&39;getElementsByTagName&39;(\\s|^)&39;(\\s|$)&34; &39;(\\s|^)&39;(\\s|$)&39;&39;Object&39;=&39;;expires=&39;=&39;;expires=&39;; &39;=&39;&39;Object&39;Object&34;(^|&)&34;=([^&]*)(&|$)&39;?&39;&&39;=&39;?&39;?&39;?&34;&&34;=&34;\{\}]/g,&34;).replace(/\:/g,&34;).replace(/\,/g,&34;);return url}else{return url;}}/*获取十六进制随机颜色*/getRandomColor () {return &&34;0&34;div&34;div&39;0&ff0;color: 34;button&34;reset&34;submit&34;button&34;reset&34;submit&34;button&34;reset&34;submit&34;checkbox&34;radio&34;number&34;number&34;search&34;search&34;search&ff0;color: 34;button&34;reset&34;submit&34;button&34;reset&34;submit&34;button&34;reset&34;submit&34;checkbox&34;radio&34;number&34;number&34;search&34;search&34;search&39;Open Sans&34;text&34;.&cc0031 }.darkblue,a.darkblue { color:878787 }.lh150 { line-height:150% }.lh180 { line-height:180% }.lh200 { line-height:200% }.unl { text-decoration:underline; }.no_unl { text-decoration:none; }.tl { text-align: left; }.tc { text-align: center; }.tr { text-align: right; }.tj { text-align: justify; text-justify: inter-ideograph; }.wn { /* 强制不换行 */word-wrap:normal;white-space:nowrap;}.wb { /* 强制换行 */white-space:normal;word-wrap:break-word;word-break:break-all;}.wp { /* 保持空白序列*/overflow:hidden;text-align:left;white-space:pre-wrap;word-wrap:break-word;word-break:break-all;}.wes { /* 多出部分用省略号表示 ,用于一行 */overflow:hidden;word-wrap:normal;white-space:nowrap;text-overflow:ellipsis;}.wes-2 { /* 适用于webkit内核和移动端 */display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 2;overflow: hidden;} .wes-3 {display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 3;overflow: hidden;}.wes-4 {display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 4;overflow: hidden;}/* 溢出样式 */.ofh { overflow: hidden; }.ofs {overflow: scroll; }.ofa {overflow: auto; }.ofv {overflow: visible; }/* 定位方式 */.ps {position: static; }.pr {position: relative;zoom:1; }.pa {position: absolute; }.pf {position: fixed; }/* 垂直对齐方式 */.vt {vertical-align: top; }.vm {vertical-align: middle; }.vb {vertical-align: bottom; }/* 鼠标样式 */.csd {cursor: default; }.csp {cursor: pointer; }.csh {cursor: help; }.csm {cursor: move; }/* flex布局 */.df-sb {display:flex;align-items: center;justify-content: space-between;}.df-sa {display:flex;align-items: center;justify-content: space-around;}/* 垂直居中 */.df-c {display: flex;align-items: center;justify-content: center;}.tb-c {text-align:center;display:table-cell;vertical-align:middle;}.ts-c {position: absolute;left: 50%; top: 50%;transform: translate(-50%,-50%);}.ts-mc {position: absolute;left: 0;right: 0;bottom: 0; top: 0;margin: auto;}/* 辅助 */.mask-fixed-wrapper {width: 100%;height: 100%;position: fixed;left:0;top:0;background: rgba(0,0,0,0.65);z-index: 999;}.bg-cover {background-size: cover;background-repeat: no-repeat;background-position: center center;}.bg-cover-all {background-size: 100% 100%;background-repeat: no-repeat;background-position: center center;}

齐刷刷、朝夕相伴、如法炮制、格格不入、无所适从、顺理成章、一动不动、此起彼伏、绘声绘色、昏昏欲睡、如梦如幻、结结实实、忍俊不禁、无恶不作、莫名其妙、三下两下、大汗淋漓。

以上都是经常用到的方法

Github地址

博客地址

本文作者:咚子原文链接:

《朝花夕拾》有着丰富的思想内容,描写了作者对童年生活的回忆和对师友诚挚的怀念,真实地书写了戊戌政变和辛亥革命前后作者所经历的生活种种——从农村到城镇,从家庭到社会,从中国到日本,每一篇都生动的反映了那个时代社会生活的一角 作。

上一篇 2022年12月10 16:07
下一篇 2022年12月18 10:29

相关推荐

  • [日]横沟正史《幽灵男》作品简介与读书感悟

    今天是御子柴进在大和旅馆差点抓到幻影怪人之后的第三天。“刚才在电话中,你们提到一些关于幻影怪人的事情。”“是的,我们想间你一些事情……对了,你现在要拍片吗?”“不,明天才开始。电影情节讨论会结束了,我

    2022年12月19 254
  • [日]东野圭吾《黎明之街》作品简介与读书感悟

    本书主要人物关系图:本书故事情节:此书主要描写仲西秋叶和渡部的婚外恋,尤其侧重于描写渡部作为一个已婚中年男出轨的心理。《黎明之街》是东野圭吾2007年出版的小说。故事的主人公我被公司新来的女同事秋叶所

    2022年12月18 258
  • 尖酸刻薄的话,讽刺尖酸刻薄的人语录

    老话说得好良言一句三冬暖恶语伤人六月寒语言暴力虽不攻心但诛心刻薄一直存在生活中我们或许都有被他人言语伤害过也许是他人的无意之举也许是小人恶意中伤如果语言一旦成为武器那就是这个世界的不幸在我们生活中你听

    2022年12月10 225
  • [南非]特雷弗·诺亚《天生有罪》作品简介与读书感悟

    这本书的书名叫《天生有罪》,原因在于他,也就是本书的作者特雷弗·诺亚于1984年出生在南非约翰内斯堡,母亲拥有科萨和犹太血统,他的父亲是瑞士籍德国人。由于南非当时的种族隔离制度,在种族隔离期间,最严重

    2022年12月17 221
  • 怎样写好小说,写小说在哪里发表挣钱

    我想许多人都有过“当作家”的念想,这就是兴趣。也许你想尽快地进入到文学的创作中,尽快地创造出一片属于自己的文学天地,但是要当个好作家,我们只有一条路,就是比创作,比谁会写东西。那么,我就从叙事基本方法

    2022年12月26 208
  • [加]克里斯多福•孟《亲密关系:通往灵魂的桥梁》作品简介与读书感悟

    近几年,从各类新闻报道中我们会发现,结婚率不断下降而离婚率却在不断上升,而且这两年生育率也在呈现出断崖式的下降。这到底是怎么回事呢?这本《亲密关系》或许能帮我们找到打开情侣间亲密关系的钥匙。一、绚丽我

    2022年12月17 208
  • IrwinShaw《Rich Man, Poor Man》作品简介与读书感悟

    正文翻译老舍简介及作品简介,评论翻译ClarencelinOneofthemostexpensivepicnicinthecentralpark中央公园最贵的野餐之一。0评论翻译Clarencelin

    2022年12月14 211
  • 咏雪名句,咏雪的名句积累

    两千多年前的某一个夜晚,大雪纷纷,谢安将子侄们召在一起,问道:大雪纷纷何所似?子侄们相继给了出答案,直到谢道韫悠悠吟道:未若柳絮因风起。谢安大为激赏。“咏絮之才”的故事流传千古。谢道韫之后,无数文人墨

    2022年12月08 293
  • [法]吉尔·雅各布《戛纳往事》作品简介与读书感悟

    法国时间5月21日,雅各布·萨尔瓦提,戛纳电影节荣誉主席吉尔斯·雅各布(GillesJacob)的戛纳回忆录中文版《戛纳秘史》在戛纳影节宫金棕榈咖啡馆举行新书发布会。戛纳荣誉主席吉尔斯·雅各布,戛纳现

    2022年12月19 238
  • 成功人士名言,成功人士霸气的句子

    富人的20句经典语录,值得深度1.活鱼会逆流而上,死鱼才会随波逐流。2.一件事被所有人都认为是机会的时候,其实它已不是机会了。3.不要抱着过去不放,拒绝新的观念和挑战。4.生命不在于活得长与短,而在于

    2022年12月08 210
  • UCCA尤伦斯当代艺术中心《成为安迪·沃霍尔》作品简介与读书感悟

    非常受瞩目的艺术大展——“成为安迪·沃霍尔”将会持续至10月。国内关于安迪·沃霍尔的展览已有多次,此次展览由UCCA尤伦斯当代艺术中心与匹兹堡安迪·沃霍尔美术馆联合推出,为观众呈现了沃霍尔在匹兹堡的成

    2022年12月16 275
  • [美]彼得·伯恩斯坦《伯恩斯坦金融三部曲3》作品简介与读书感悟

    践行人民至上、生命至上理念。人民健康是社会文明进步的基础,是民族昌盛和国家富强的重要标志,也是广大人民群众的共同追求。——习近平2020年伊始,新冠肺炎疫情持续全球蔓延,世界政治经济动荡不安。疫情面前

    2022年12月24 208
  • Twentine《打火机与公主裙·荒草园》作品简介与读书感悟

    书中的二爷以一个浪子回头杀出重围,让人感觉到没了腿的二爷也是个很真实的男人。再之后,接触到她的成名作《那个不为人知的故事》,用平静的叙述着那笔下暗流涌动的情潮。链接:https://pan.baidu

    2022年12月04 256
关注微信