JS基础
文章平均质量分 51
基础之后造大山
itsnekodeng学习技术博客
Web Front-end Developer,很长时间了,总是想写点什么,无关风月,就是想写点什么。无论是记录知识点,总结技能树,人生长谈,风花雪月之事,都可以有一个存档的地方,对于复盘,回忆,都是一个极好的方谭。
展开
-
JS-三个高阶函数filter-map-reduce
前言: JS-三个高阶函数filter-map-reduce,需要掌握,很好用,真香警告。filterfilter 有过滤的意思filter(参数) 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。filter中的参数要求是一个回调函数,而且该函数要求返回一个boolean类型的值若布尔值为true,则函数内部会自动将这次回调的n加入到新的数组中,继续下去若布尔值为false,函数内部则会过滤掉这次的n,然后继续筛选判断后面的注意: filter方法 会改变原始数原创 2021-02-23 21:03:36 · 377 阅读 · 0 评论 -
JS-JavaScript事件详解
JS运行和编译语法分析查找基本语法有没有错误预解析执行之前进行预解析var、function关键字提前到当前作用域的顶部,变量默认值为undefined,函数默认值为函数体代码块,当函数与变量重名时,保留函数。变量生命周期全局变量的生命周期直至浏览器卸载页面才会结束。局部变量只在函数的执行过程中存在,而在这个过程中会为局部变量在栈或堆上分配相应的空间,以存储它们的值,然后再函数中使用这些变量,直至函数结束事件用户的行为:onclick、ondblclick、onfocus、onblur、原创 2020-12-14 10:23:27 · 155 阅读 · 0 评论 -
JS-语法设计模式
设计模式:代码经验的总结设计模式都是面向对象的工厂模式工厂函数就是做一个对象创建的封装,并将创建的对象return出去function newObj(name,age){ var o = new Object(); o.name = name; o.age = age; return o;}var obj = newObj();单例模式:只允许存在一个实例的模式var Instance = (function(){ var obj; retu原创 2020-12-12 16:56:50 · 118 阅读 · 0 评论 -
JS-ES6初识详解
let和constlet块级作用域:一种普遍存在于各个语言中的作用域范围; { var a = 10; let b = 20; } console.log(a)//10 console.log(b)// b is not defined在一个大括号中用let声明的变量在外部不可访问了,每个大括号都是独立的作用域有了let声明我们在函数外部就无法访问到 i ,i作为下标只存在于for循环中, 所以,这个时候每个i都是独立的;我们在点击的时原创 2020-12-05 11:03:34 · 201 阅读 · 0 评论 -
JS-ES5初识详解
ES5严格模式(strict mode)顾名思义,这种模式使得Javascript在更严格的条件下运行。-消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为;-消除代码运行的一些不安全之处,保证代码运行的安全;-提高编译器效率,增加运行速度;-为未来新版本的Javascript做好铺垫。进入严格模式 “use strict”"use strict"console.log("已经进入严格模式");严格模式行为变更:1.全局变量声明时 必须加var"use stric原创 2020-12-05 11:01:23 · 183 阅读 · 0 评论 -
关于项目上线流程一览
域名:新网 万网服务器及域名购买(略)安装各种环境1、任意命令行工具里输入ssh root@服务器公网IP2、输入yes,然后输入服务器开机密码。密码处于安全考虑不会显示3、安装git yum install git4、安装node高版本,安好之后就有node和npm$ curl -sL https://rpm.nodesource.com/setup_10.x | sudo bash -$ yum install nodejs5、一般在data文件夹下放数据,通过touch ind原创 2020-12-03 10:26:21 · 870 阅读 · 0 评论 -
关于前端图片加载优化方式方法
图片加载优化不用图片对于移动端来说,一般图片都用 CDN 加载,可以计算出适配屏幕的宽度,然后去请求相应裁剪好的图片。小图使用 base64 格式将多个图标文件整合到一张图片中(雪碧图)对于能够显示 WebP 格式的浏览器尽量使用 WebP 格式。缺点就是兼容性并不好小图使用 PNG,其实对于大部分图标这类图片,完全可以使用 SVG 代替照片使用 JPEG防抖和节流利用Lodash防抖考虑一个场景,有一个按钮点击会触发网络请求,但是我们并不希望每次点击都发起网络请求,而是当用户原创 2020-12-01 09:44:29 · 390 阅读 · 0 评论 -
http知识之请求响应状态码
应用程序分类:B/S:Browser(浏览器)/ Server(服务器)C/S:Client(客户端)/ Server(服务器)http协议:基于TCP/IP的’无状态’通信协议前端(浏览器客户端)向后台(web服务器端)发送http请求获取数据http请求报文:一个HTTP请求报文由4个部分组成:请求行(request line)、请求头部(header)空行请求数据1.form的enctype属性为编码方式,常用有两种:application/x-www-for原创 2020-11-14 10:09:14 · 150 阅读 · 0 评论 -
JS-DOM对象概述
DOM(Document Object Model 文档对象模型)DOM定义了表示和修改文档所需的对象、行为和属性,以及这些对象之间的关系。当你想要改变网页行为的时候 你该怎么办呢?你不会用脚来踹网页或者用头来顶网页吧?这时候怎么办呢 ?而你手中有javascript 这种工具!所以你就会考虑用javascript来改变网页行为.DOM树DOM操作获取DOM节点1、 document.getElementById(id名)2、 getElementsByTagName(标签名) 得到的是一个原创 2020-11-05 17:51:19 · 137 阅读 · 0 评论 -
JS-BOM对象概叙
BOM(Browser Object Model 浏览器对象模型)window是全局浏览器内置顶级对象表示浏览器中打开的窗口(没有应用于window对象的公开标准,不过所有浏览器都支持该对象)Window 对象表示一个浏览器窗口或一个框架。在客户端 JavaScript 中,Window 对象是全局对象,所有的表达式都在当前的环境中计算。也就是说,要引用当前窗口根本不需要特殊的语法,可以把那个窗口的属性作为全局变量来使用。例如,可以只写 document,而不必写 window.documen原创 2020-11-05 17:49:52 · 96 阅读 · 0 评论 -
JS基础-json数据格式简要概叙
Json简单说就是javascript中的对象和数组,所以这两种结构就是对象和数组两种结构,通过这两种结构可以表示各种复杂的结构。1、对象:对象在js中表示为“{}”括起来的内容,数据结构为 {key:value,key:value,…}的键值对的结构,在面向对象的语言中,key为对象的属性,value为对应的属性值,所以很容易理解,取值方法为 对象.key 获取属性值,这个属性值的类型可以是 数字、字符串、数组、对象几种。2、数组:数组在js中是中括号“[]”括起来的内容,数据结构为 [“java”,原创 2020-11-05 17:47:42 · 153 阅读 · 0 评论 -
JS-事件流简要分析
事件冒泡Netscape认为,石头先扔进河里,再从河里确定了一个扔石头的点,从外往内逐渐精确的过程(捕获)w3c认为,石头扔进去先到达准确的那个点,涟漪从内往外扩散(冒泡)事件流:事件执行的顺序子元素的事件被触发时,父级也会被触发(冒泡)一个完整事件包含 捕获阶段 —> 目标阶段 —>冒泡阶段冒泡是可以阻止的 e.stopPropagation( ); e.cancelBubble=true;//兼容IE事件监听DOM0级事件处理,是一种赋值方式,是被所有浏览器所支持的原创 2020-11-05 17:45:17 · 153 阅读 · 0 评论 -
JS基础-string内置对象详解
String 对象用于处理文本(字符串)。String 对象创建方法: new String()。语法:var txt = new String("string");//或者更简单方式:var txt = "string";string对象方法表:https://upload-images.jianshu.io/upload_images/15859737-01b5d756294501e9.png?imageMogr2/auto-orient/strip|imageView2/2/w/670原创 2020-11-05 17:41:50 · 247 阅读 · 0 评论 -
JS-this关键字详解
thisthis是js的关键字他是根据执行上下文(执行环境)动态指向当前调用的对象;谁调用,就指谁一、全局作用域下:this始终指向window对象二、函数作用域下:函数被谁调用,this就指向谁三、对象中的函数作用域下:this指向该方法所属的对象四、在构造函数中:this始终指向新对象五、自执行函数中:this指向window六、箭头函数中:this是在定义是绑定到了父级对象上,不是在执行过程中绑定的注意:匿名函数的this就指向window,没有其他结果// 1,全局this指w原创 2020-11-05 17:39:00 · 802 阅读 · 0 评论 -
JS-node节点知识点详解
node节点(更详细的获取(设置)页面中所有的内容)根据 W3C 的 HTML DOM 标准,HTML 文档中的所有内容都是节点:元素是节点的别称,节点包含元素当然节点还有好多细化的种类;根节点:root>>>>HTML没有父节点;节点操作:(通过父子系关系)childNodes 获取当前元素的所有子节点;nodeType 节点种类,返回值是数字;nodeValue 获取(文字)节点的文本内容;nodeName 返回node节点名原创 2020-11-05 17:36:12 · 648 阅读 · 0 评论 -
JS的MATH和Date对象详解
什么是对象?对象的类型是Object。JavaScript 中的所有事物都是对象:字符串、数值、数组、函数…javaScript中万事万物皆对象想要有对象怎么办?创建对象:(创建两种方式:字面量和new运算符)1.New一个对象出来;var obj = new Object();//找到对象了 >>> 第一个想到的就是属性;//给对象添加一个属性;obj.bianmei='哇真的变漂亮了' ;obj.say=function(){ alert(this.b原创 2020-11-04 10:33:26 · 115 阅读 · 0 评论 -
前端了解掌握之PHP+Mysql知识
PHP(HyperText Preprocessor)是一种创建动态交互性站点的强有力的服务器端脚本语言。第一句 Hello World<?php echo 'hello word<br>'; // echo('hello word<br>'); //输出结果为 ?> die() >> 输出内容的同时结束程序变量 $num = 20; echo $num;2)for()for ($i=1; $i<=5; $i原创 2020-11-04 10:26:46 · 197 阅读 · 0 评论 -
JS-使用JS方法获取当前页面的URL(网址信息)
var url; url = window.location.href; /* 获取完整URL */alert(url); /* http://127.0.0.1:8020/Test/index.html#testname=test */url = window.location.pathname; /* 获取文件路径(文件地址) */alert(url); /* /Test/index.html */url = window.location.protocol; /* 获取协议 */al原创 2020-11-04 10:10:21 · 641 阅读 · 0 评论 -
JS基础-数组-最详解
Array 对象Array 对象用于在变量中存储多个值:var cars = ["Saab", "Volvo", "BMW"];第一个数组元素的索引值为 0,第二个索引值为 1,以此类推。数组数组:一组数据(一个变量来承载)数组对象是一个有序的数据,数据可以是 [原始类型] 或 [对象类型]集合。相对于变量,数组可用于在一个变量中存储多个变量值。数组中的每一项都有一个数字附于其上,被称为索引。在 JavaScript 中,数组索引从 0 开始,并可以使用多种 [方法]操作.。 var st原创 2020-11-03 15:04:54 · 444 阅读 · 0 评论 -
JS-cookie会话详解
cookie 会话跟踪技术一个网站从打开到浏览(包括这个网站的其他子页面)到最后关闭浏览器整个过程叫一个“会话”。在一次会话从开始到结束的整个过程,全程跟踪记录客户端的状态(例如:是否登录、购物车信息、是否已下载、是否 已点赞、视频播放进度等等)。多次请求页面,数据共享cookie的存取document.cookie = "username=zhangsan"; //存 cookieconsole.log(document.cookie); // 取 cookiecookie的修改与删除原创 2020-11-03 15:00:37 · 853 阅读 · 0 评论 -
JS-ajax详解
Ajax( Asynchronous Javascript And XML)注意同步和异步的区分同步 sync: 首先,JS 是单线程的语言,所谓“单线程”就是一根筋,对于拿到的程序,一行一行的执行,前面的执行完成,后面的傻傻的等着。若前面的代码没执行完就会造成堵塞,后面的没法执行。异步 async: 而AJAX 是一种用于创建快速动态网页的技术。通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。异步代码执行的时候就不会阻塞后面的代码执行。记住: 同步执行代码总是优先原创 2020-11-03 14:59:02 · 7383 阅读 · 0 评论 -
当浏览器地址栏输入url地址后,敲下回车会发生什么?
当浏览器地址栏输入一个url网址后,敲下回车会发生什么?1.利用DNS域名解析系统进行域名解析,将域名解析成IP因为域名只是一个别名,计算机只认识IP,所以需要DNS解析一下(如果有端口号需要识别端口号,否则进入默认端口:http协议默认端口号是80,https默认端口号是443)2.查找ip对应的主机服务器如果是第一次访问该服务器,会向网络供应商(移动、联通…)请求3.TCP的三次握手,经过三次在客户端和服务器之间传递报文,建立连接4.发起http请求,请求入口文件,后端接收到原创 2020-11-03 14:49:59 · 496 阅读 · 0 评论 -
Hello HarmonyOS
1.概述基于微内核的全场景分布式操作系统。HarmonyOS是一款“面向未来”、面向全场景(移动办公、运动健康、社交通信、媒体娱乐等)的分布式操作系统。在传统的单设备系统能力的基础上,HarmonyOS提出了基于同一套系统能力、适配多种终端形态的分布式理念,能够支持多种终端设备。框架层框架层为HarmonyOS的应用程序提供了Java/C/C++/JS等多语言的用户程序框架和Ability框架,以及各种软硬件服务对外开放的多语言框架API;同时为采用HarmonyOS的设备提供了C/C++/JS等多原创 2020-11-01 10:33:55 · 3276 阅读 · 0 评论 -
JS-ES6详解
let和constlet块级作用域:一种普遍存在于各个语言中的作用域范围; { var a = 10; let b = 20; } console.log(a)//10 console.log(b)// b is not defined在一个大括号中用let声明的变量在外部不可访问了,每个大括号都是独立的作用域有了let声明我们在函数外部就无法访问到 i ,i作为下标只存在于for循环中, 所以,这个时候每个i都是独立的;我们在点击的时原创 2020-11-01 10:12:12 · 2921 阅读 · 0 评论 -
JS-ES5详解
ES5严格模式(strict mode)顾名思义,这种模式使得Javascript在更严格的条件下运行。-消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为;-消除代码运行的一些不安全之处,保证代码运行的安全;-提高编译器效率,增加运行速度;-为未来新版本的Javascript做好铺垫。进入严格模式 “use strict”"use strict"console.log("已经进入严格模式");严格模式行为变更:1.全局变量声明时 必须加var"use stric原创 2020-11-01 10:09:57 · 1299 阅读 · 0 评论 -
JS-模块化AMD和CMD
函数封装 —> 对象 —> 立即执行函数 —> 模块化规范是一种项目的构架模式, 这种构架模式让JS代码重用性变得非常高,让项目构架的一些复杂问题全部得以解决。 例如,多个script标签不会再出现了,我们只要用一个script标签进行引入就可以了。模块化那有两个规范,AMD规范和CMD规范,当然还有针对于nodejs后台的commonJS规范;1. 首先对于依赖:AMD提前执行(不管什么时候用, 先加载过来) //特点 : 前期消耗网络资源大, 但是后期运行效率高.CMD需求执原创 2020-11-01 10:05:53 · 577 阅读 · 0 评论 -
JS-正则表达式终极详解
正则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE)语法/正则表达式主体/修饰符(可选)正则的第一种写法var reg=new RegExp('a');var str='abcdefg';alert(reg.test(str)); //返回bool值,代表是否匹配成功正则表达式的第二种写法perl风格 古老的语言var re = /a/var str='abcdefg';re.test(str);[ ] 中括号:匹配其中的原创 2020-10-31 10:17:21 · 204 阅读 · 0 评论 -
JS-面向对象(构造函数、原型)
什么是面向对象?对象是类的实例,类是对象的抽象对象的本质:属性和方法的集合学过的对象Array、String、Math、Date …创建对象的方式:1、字面量 var obj = {}2、通过new运算符 var obj = new Object()3.构造函数用来构造(创建)对象的函数他在声明的时候跟普通函数没有区别用new运算符加上函数的调用,调用的结果就是一个对象构造函数中的this指的是即将要new的那个对象构造函数就是封装一个函数,可以用来通过new的方式得到一系列特征相原创 2020-10-31 10:14:05 · 168 阅读 · 0 评论 -
JS-闭包和继承
函数在创建的时候会创建两个对象,一个是函数对象本身,另一个是作用域链对象函数在调用的时候会创建一个执行环境对象(活动对象)闭包(closure)闭包可以在全局函数里面操作另一个作用域的局部变量, 既能重复使用,又不会污染全局闭包有三步:1、外层函数嵌套内层函数2、内层函数使用外层函数的局部变量3、把内层函数作为外层函数的返回值图例展示:1-预解析[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-763PCw2I-1604109393588)(https://i原创 2020-10-31 09:57:52 · 176 阅读 · 0 评论 -
JS冒泡选择快速排序
JS冒泡排序(必须掌握思想和必须会代码默写)(面试最常考)原理:依次比较相邻的两个值,如果后面的比前面的小,则将小的元素排到前面。依照这个规则进行多次并且递减的迭代,直到顺序正确。var arr=[8,94,15,88,55,76,21,39];function sortarr(arr){ for(i=0; i < arr.length-1; i++){ for(j=0; j < arr.length-1-i; j++){ if(arr[j]原创 2020-10-30 21:33:34 · 111 阅读 · 0 评论