JavaScript
lhl891111
这个作者很懒,什么都没留下…
展开
-
函数柯里化
函数柯里化概念:函数柯里化:把一个多参数函数转换成一个嵌套的一元函数的过程。是高阶函数和闭包相结合的应用。柯里化是指这样一个函数(假设叫做createCurry),他接收函数A作为参数,运行后能够返回一个新的函数。并且这个新的函数能够处理函数A的剩余参数。先对参数进行收集,最后再进行计算。函数柯里化实现:(1)实现柯里化方式1--将传入参数为空设置作为函数执行返回值的条件...原创 2019-08-23 14:31:31 · 132 阅读 · 0 评论 -
解决CKeditor上传图片默认设置原始图片高宽的问题
如上图所示,上传图片后,总是将图片的元素高宽默认绑定上,但是由于显示时网站是自适应的,绑定上行内样式高宽的图片总是会显示不正常,所以需要将其去掉。默认如下图即可。百度上的解决方案都是修改此文件。尽管我觉得修改这个文件不太好,但是我还是试了试,结果还是没有效果。直到看到有文章说CKEDITOR.editorConfig = function( config ) { ...转载 2018-08-17 15:24:34 · 6366 阅读 · 1 评论 -
JavaScript对象
1.所有的事物都是对象,对象只是带有属性和方法的特殊数据类型。JavaScript提供了多个内建对象,如String、Date、Array等2.访问对象(1)访问对象的属性objectName.propertyName;例如:var message="hello word"; var x=message.length;(2)访问对象的方法objectName.methodName();例如...原创 2018-08-13 17:06:59 · 130 阅读 · 0 评论 -
前端学习--JavaScript小技巧
(1)过滤唯一值,利用set类型的成员唯一性和扩展运算符...可以达到过滤数组重复值得功能例子:const array=[1,2,3,5,5,1,1];const uniqueArray=[...new Set(array)];console.log(uniqueArray);注意:这个技巧的适用方位是数组中包括的数值类型为undefined,null,boolean,string ...转载 2019-04-23 11:11:50 · 94 阅读 · 0 评论 -
JavaScript 面试题--变量提升和类型转换
var b=1;function outer(){ var b=2; function inner(){ b++; console.log(b); var b=3; } inner();}outer();这道面试题的答案是NaN?为什么呢?看好久都表示不理解,突然像是明白了,记录一下。inner()这...原创 2019-07-29 17:12:07 · 364 阅读 · 0 评论 -
再次学习JS正则表达式
(1)JavaScript通过内置对象RegExp支持正则表达式,两种方法实例化RegExp对象字面量和构造函数//字面量方式:var reg = /\bis\b/var text = 'He is a boy.'var result = text.replace(reg, 'IS') // 'He IS a boy.'//构造函数var reg = new Reg...转载 2019-06-13 11:38:30 · 159 阅读 · 0 评论 -
同步、异步编程(上)--同步异步概念以及回调函数、事件监听
(1)同步和异步的概念同步:在进程中任务未结束时,需要等待结束后才能执行下一个任务。异步:在进程中任务未结束,在等待的过程中可以先去执行下一个任务。由于JavaScript属于单线程,所以我们最好采用异步编程。(2)异步编程的实现方式a.回调函数b.事件监听c.发布/订阅e.promise对象f.Gennerator函数g.async函数(3)回调函数1.回调函数的概念:回...转载 2019-05-17 14:25:34 · 737 阅读 · 0 评论 -
Ajax原理
ajax原理参考文章axios中文apifetch获取数据转载 2019-05-16 17:48:44 · 114 阅读 · 0 评论 -
JavaScript的运行机制、事件队列和循环
(1)JavaScript的执行机制1、所有同步任务都在主线程上执行,形成一个执行栈(execution context stack)。2、主线程之外,还存在一个"任务队列"(task queue)。只要异步任务有了运行结果,就在"任务队列"之中放置一个事件。3、一旦"执行栈"中的所有同步任务执行完毕,系统就会读取"任务队列",如果有有执行任务,则进入执行栈,开始执行。4、主线程不断重复上...转载 2019-05-16 17:26:26 · 555 阅读 · 0 评论 -
函数上下文,this的指向
简单来说函数上下文就是函数里面的this是谁。【上下文就是this的指向】(1)函数执行时,函数的上下文是window。var a = 200;function func(){ var a = 100; console.log(this.a) // window.a}func();(2)函数作为对象的方法,对象调用方法时,函数的上下文即为这个对象。function...转载 2019-05-16 16:32:36 · 578 阅读 · 1 评论 -
原型、原型链、继承
(1)prototype的产生在面向对象编程中我们在定义对象时会同时定义一些属性和方法,实例化以后可以访问例如:function Obj(){ this.a=[]; //实例变量 this.fn=function(){ //实例方法 }}var o=new Obj();console.log(typeof o.a); //objectconsole...转载 2019-05-15 18:07:13 · 230 阅读 · 0 评论 -
JavaScript函数参数
函数显示参数(Parameters)隐式参数(Arguments)函数显示参数在函数定义时列出。函数隐式参数在函数调用时传递给函数真正的值。1.参数规则JavaScript 函数定义时显式参数没有指定数据类型。JavaScript 函数对隐式参数没有进行类型检测。2.默认参数JavaScript 函数对隐式参数的个数没有进行检测。如果函数在调用时未提供隐式参数,参数会...原创 2018-08-02 18:46:40 · 228 阅读 · 0 评论 -
JavaScript小总结1
(1)如果重新声明 JavaScript 变量,该变量的值不会丢失:在以下两条语句执行后,变量 carname 的值依然是 "Volvo":var carname="Volvo"; var carname;(2)关于let和varlet允许你声明一个作用域被限制在块级中的变量、语句或者表达式。在Function中局部变量推荐使用let变量,避免变量名冲突。let 声明的变量只在其声明的块或子块中可...原创 2018-07-12 15:28:44 · 155 阅读 · 0 评论 -
JavaScript错误和JavaScript调试
try语句:测试代码块的错误catch语句:处理错误thow语句:创建自定义错误例子:function myFunction() { var message, x; message = document.getElementById("message"); message.innerHTML = ""; x = document.getElementById...原创 2018-07-18 15:36:58 · 156 阅读 · 0 评论 -
JavaScript正则表达式
正则表达式是由一个字符序列形成的搜索模式语法:/正则表达式主体/修饰符(可选)注:在JavaScript中正则表达式通常用于两个字符串方法作为参数,search和replacesearch() 方法 用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,并返回子串的起始位置。replace() 方法 用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串...原创 2018-07-18 15:28:42 · 99 阅读 · 0 评论 -
JavaScript语句
发给浏览器的命令,分号用于分割JavaScript语句(使用分号的用处是一行中编写多行语句)。JavaScript代码:JavaScript语句的序列,浏览器按照编写顺序依次执行语句,JavaScript代码块:用左右花括号包起来,作用是一并的执行语句序列JavaScript语句标识符(关键字):JavaScript语句通常以一个语句标识符为开始,并执行该语句这些关键字包括:var 、break、...原创 2018-07-12 14:36:48 · 117 阅读 · 0 评论 -
JavaScript语法
1.JavaScript字面量:固定值成为字面量(1)数字字面量:整数、小数、科学计数(2)字符串字面量:可使用单引号或双引号(3)表达式字面量:5+6,5*6(4)数组(Array)字面量:[4,100,1,52,10](5)对象(Object)字面量:{firstName:'John',lastName:'Doe',age:50}(6)函数(Function)字面量:function myFu...原创 2018-07-12 14:22:32 · 109 阅读 · 0 评论 -
JavaScript输出
JavaScript 可以通过不同的方式来输出数据:1. 使用 window.alert() 弹出警告框。2. 使用 document.write() 方法将内容写到 HTML 文档中。3. 使用 innerHTML 写入到 HTML 元素。4. 使用 console.log() 写入到浏览器的控制台。...原创 2018-07-12 12:42:44 · 207 阅读 · 0 评论 -
JavaScript的用法
1.HTML 中的脚本必须位于 <script> 与 </script> 标签之间。<script> 和 </script> 会告诉 JavaScript 在何处开始和结束。2.脚本可被放置在 HTML 页面的 <body> 和 <head> 部分中。注:那些老旧的实例可能会在 <script> 标签中使用 typ原创 2018-07-12 12:32:31 · 150 阅读 · 0 评论 -
JavaScript简介
ECMA-262 是 JavaScript 标准的官方名称。ECMAScript 6 也称为 ECMAScript 2015。ECMAScript 7 也称为 ECMAScript 2016。JavaScript能做些什么?1.直接写入输出流document.write("<h1>这是一个标题</h1>");注:只能在 HTML 输出中使用 document.write。如...原创 2018-07-12 12:19:01 · 136 阅读 · 0 评论 -
JavaScript数据类型转换
1.复习一下JavaScript的数据类型(1)5种数据类型string,number,boolean,object,function(2)3种对象类型Object,Date,Array(3)2个不包含任何值的数据类型null,undefined2.typeof操作符查看JavaScript变量的数据类型NaN 的数据类型是 number数组(Array)的数据类型是 obje...原创 2018-07-16 16:27:27 · 175 阅读 · 0 评论 -
变量数据类型及检测: typeof,intanceof ,constructor,tostring
作用:使用typeof操作符来检测变量的数据类型实例:typeof "John" // 返回 stringtypeof 3.14 // 返回 numbertypeof false // 返回 booleantypeof [1,2,3,4] // 返回 objectt...原创 2018-07-16 15:27:21 · 279 阅读 · 0 评论 -
JavaScript变量提升和严格模式
1、JavaScript中,函数及变量的声明都将被提升到函数的最顶部,也就是说变量可以先使用后声明。2、JavaScript初始化不会提升。注:通常我们在每个作用域开始前声明这些变量,这也是正常的JavaScript解析步骤,易于理解。另外,JavaScript严格模式不允许使用未声明的变量。其实,我们理解了js的解析机制就行,遇到script标签js就进行预解析,将变量var和func...原创 2018-07-18 16:27:53 · 1155 阅读 · 0 评论 -
JavaScript数据类型
JavaScript中的数据类型包括:字符串(String)、数组(Number)、布尔(Boolean)、数组(Array)、对象(Object)、空(Null)、未定义(Undefined),据说Function也是一种数据类型。JavaScript拥有动态类型:var x;var x=5;var x='Json';Undefined和Null的区别关键字null:当我们想让已经定义的变量有有...原创 2018-07-12 17:16:54 · 138 阅读 · 0 评论 -
JavaScript对象
在JavaScript中,几乎所有的事物都是对象,JavaScript对象是拥有属性和方法的数据。1.对象定义var person={"name":"小明","age":"18","like":function(){ return "喜欢打篮球,弹吉他"; }}或var person=new Object();person.name='小明';person.原创 2018-07-12 17:47:20 · 107 阅读 · 0 评论 -
JavaScript函数定义
JavaScript使用关键字function定义函数,函数可以通过声明定义,也可以说是一个表达式1.函数的定义(1)函数声明function functionName(parameters){//执行代码}说明:分号是用来分隔可执行的JavaScript语句,因为函数声明不是一个可执行的语句,所以不用分号结束(2)函数表达式JavaScript函数可以通过一个表达式定义,函数表...原创 2018-08-02 17:57:51 · 472 阅读 · 0 评论 -
JavaScript HTML DOM
JavaScript-HTML DOM当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model)。通过HTML DOM,可访问JavaScript HTML文档的所有元素;通过可编程的对象模型,JavaScript获得了足够的能力来创建动态的HTML。(1)改变页面的所有HTML元素(2)改变页面的所有HTML属性(3)改变页面的所有CSS样式(4)...原创 2018-08-09 18:00:28 · 131 阅读 · 0 评论 -
JavaScript函数调用
JavaScript函数有4中调用方式:(1)作为一个函数调用 (2)作为方法调用 (3)使用构造函数调用 (4)作为函数方法调用每种方式的不同在于this的初始化说明:一般而言,在JavaScript中,this指向函数执行时的当前对象【调用函数的那个对象】。1.作为一个函数调用function myFunction(a, b) { return a * b;}myFun...原创 2018-08-03 16:51:20 · 197 阅读 · 0 评论 -
JavaScript代码规范
1. 变量名推荐使用驼峰法来命名2. 空格与运算符:通常运算符(=+-*/)前后需要添加空格3. 代码缩进:通常使用4个空格符号来缩进代码块,不推荐使用TAB键来缩进,因为不同编辑器TAB键的解析不一样。4. 语句规则(1)简单语句的通用规则:一条语句通常以分号作为结束符(2)复杂语句的通用规则: 将左花括号放在第一行的结尾,左花括号前添加一空格,将右花括号独立放在一行,不要以分号结束...原创 2018-07-26 17:30:34 · 116 阅读 · 0 评论 -
JavaScript小总结3
1. JavaScript 之 JSONJSon用于存储和传输数据格式,常用于服务端向网页传递数据。JSon的英文全称是JavaScript Object Notation,是一种轻量级的数据交换格式。注:JSon使用JavaScript语法,但是JSon格式仅仅是一个文本,文本可以被任何编程语言读取以及作为数据格式传递。(1)JSon语法规则: 数据为 键值对,键值对包括字段名称(...原创 2018-07-26 17:30:09 · 104 阅读 · 0 评论 -
JavaScript验证API
1.约束验证DOM方法(1)checkValidity():如果input元素中的数据是合法的返回true,否则返回false var inpObj = document.getElementById("id1"); if (inpObj.checkValidity() == false) { document.getElementById("demo").in...原创 2018-07-26 16:09:49 · 223 阅读 · 0 评论 -
JavaScript表单
1、JavaScirpt表单验证:HTML表单验证可以通过JavaScript来完成例如:<form name="myForm" action="demo_form.php" onsubmit="return validateForm()" method="post"></form>2、HTML表单自动验证:HTML表单验证也可以通过浏览器来自动完成例如:&a原创 2018-07-26 15:26:13 · 365 阅读 · 0 评论 -
JavaScript小总结2
1.JavaScript 事件2.JavaScript 字符串(1)可以使用索引位置来访问字符串的每个字符。(2)字符串可以是对象,通常,JavaScript字符串是原始值,可以使用字符串创建:var firstName="John";但我们也可以使用new关键字将字符串定义为一个对象:var firstName=new String("John");注:不要创建String对象,它会拖慢执行速度...原创 2018-07-13 17:06:14 · 109 阅读 · 0 评论 -
JavaScript函数
1.JavaScript函数语法函数就是包裹在花括号中的代码块,前面使用了关键字function。注:JavaScript对大小写敏感,关键字function必须是小写的,并且必须以函数名称相同的大小写来调用函数2.带参数的函数3.带有返回值的函数4.局部JavaScript变量和全局JavaScript变量局部变量:在函数内部声明的变量,使用var,只能在函数内部访问它,可以在不同的函数中声明相...原创 2018-07-13 11:49:54 · 110 阅读 · 0 评论 -
JavaScript使用误区
(1)赋值运算符应用错误【例如在if条件语句中,正确的是使用比较运算符==】var x = 0;if (x = 10)//返回true,因为条件语句执行了为x赋值10,10为true(2)比较运算符的常见错误【例如==与===】var x = 10;var y = "10";if (x == y)//返回true,而如果条件语句是x===y则返回false注:switch语句中使用恒等...原创 2018-07-18 17:41:44 · 166 阅读 · 0 评论 -
JavaScript循环
(1)for循环语法:for(语句1;语句2;语句3;){ 被执行的代码块;}语句1:初始化循环中所用到的变量,可以初始化多个变量的值,语句1是可选的(例如在循环开始前已经设置了超时)语句2:通常语句2用于评估初始变量的条件,如果语句2返回true,则循环再次开始,如果返回false,则循环将结束。语句2也是可选的注:如果省略了语句2,那必须在循环内提供break,否则循环将无法停下来。语句...原创 2018-07-16 15:05:49 · 114 阅读 · 0 评论