随笔分类 -  js重点

摘要:跨站脚本攻击(XSS攻击) XSS(Cross Site Scripting),跨站脚本攻击。XSS是常见的Web攻击技术之一.所谓的跨站脚本攻击指得是:恶意攻击者往Web页面里注入恶意Script代码,用户浏览这些网页时,就会执行其中的恶意代码,可对用户进行盗取cookie信息、会话劫持等各种攻击 阅读全文
posted @ 2018-09-17 22:04 L_mj 阅读(314) 评论(0) 推荐(0)
摘要:回文字符串:字符串从前往后读和从后往前读字符顺序是一致的。 判断一个字符串是不是回文字符串 判断字符串中的所有回文字符串 判断字符串中的最长回文字符串 阅读全文
posted @ 2018-09-05 17:31 L_mj 阅读(1350) 评论(0) 推荐(0)
摘要:判断一个数是不是素数 输出n内的所有素数 阅读全文
posted @ 2018-09-05 16:45 L_mj 阅读(15114) 评论(1) 推荐(0)
摘要:一、什么是内存泄漏? JavaScript中的内存泄漏就是被分配的内存没有被使用,但是也不能被回收的一种现象。 二、内存泄漏会导致的问题? 这样导致内存一直被占用,最后影响程序性能甚至出现崩溃。 三、JavaScript内存泄漏的几种情况。 1、js对象循环引用导致内存泄漏: 上面是两个很明显的循环 阅读全文
posted @ 2018-08-09 16:21 L_mj 阅读(238) 评论(0) 推荐(0)
摘要:当错误发生时,当事情出问题时,JavaScript 引擎通常会停止,并生成一个错误消息。描述这种情况的技术术语是:JavaScript 将抛出一个错误。 try 语句允许我们定义在执行时进行错误测试的代码块。 catch 语句允许我们定义当 try 代码块发生错误时,所执行的代码块。 首先try提捕 阅读全文
posted @ 2018-08-09 16:12 L_mj 阅读(637) 评论(0) 推荐(0)
摘要:关于this this并不是指向函数本身。 this在任何情况下都不指向函数的词法作用域。 this是在运行时进行绑定的,而并不是在编写时绑定,它的上下文取决于函数调用时的各种条件。 this的绑定和函数声明的位置没有任何关系,只取决与函数的调用方法。 this的绑定规则 this到底绑定或者引用的 阅读全文
posted @ 2018-08-02 17:46 L_mj 阅读(2053) 评论(0) 推荐(0)
摘要:使用new来调用函数,或者说发生构造函数调用时,会自动执行下面的操作: 当this碰到return时 如下代码: 再如: 总结: 如果返回值是一个对象,那么this指向的就是那个返回的对象,如果返回值不是一个对象那么this还是指向函数的实例。 还有一点就是虽然null也是对象,但是在这里this还 阅读全文
posted @ 2018-08-02 17:06 L_mj 阅读(511) 评论(0) 推荐(0)
摘要:对象有”prototype”属性,函数对象有”prototype”属性,原型对象有”constructor”属性。 关于原型 在JavaScript中,原型也是一个对象,通过原型可以实现对象的属性继承,JavaScript的对象实例中都包含了”[[Prototype]]”内部属性,这个属性所对应的就 阅读全文
posted @ 2018-08-01 16:43 L_mj 阅读(275) 评论(0) 推荐(0)
摘要:js中两种最常见的立即执行函数 (function(){...})() (function(){...}()) 函数声明和函数表达式不同之处在于: Javascript引擎在解析javascript代码时会‘函数声明提升’(Function declaration Hoisting)当前执行环境(作 阅读全文
posted @ 2018-08-01 11:59 L_mj 阅读(237) 评论(0) 推荐(0)
摘要:什么是闭包?这就是闭包!!有权访问另一个函数作用域内变量的函数都是闭包。当函数可以记住并访问所在的词法作用域时,就产生了闭包,即使函数是在当前词法作用域之外执行。 这里 inc 函数访问了构造函数 a 里面的变量 n,所以形成了一个闭包。 执行过程: var c=a();这里的a()返回的是函数in 阅读全文
posted @ 2018-08-01 11:29 L_mj 阅读(214) 评论(0) 推荐(0)
摘要:是否包含指定字符: ~ 取整: | 取半: >> 成长值评级: || 判断奇偶: & 交换两个数字的值: ^= 2的n次方: << 和 ** 1 << n-1 是否是指定字符串开头: ! 和 ^ 字符串转数字: + 转为 Boolean 值: !! 转为数字类型:~~ 1、是否包含指定字符: ~ 例 阅读全文
posted @ 2018-07-19 17:01 L_mj 阅读(218) 评论(0) 推荐(0)
摘要:在js中能表示的最大安全整数是 9007199254740991,可以用API Number.MAX_SAFE_INTEGER 看一下 超出范围就会发生精度丢失,像这样 解决方法: 相当于一个字符串相加的问题。不能把数字简单的相加,需要倒序取数字的每一位,进行相加,大于等于10,进1,小于10,进0 阅读全文
posted @ 2018-07-19 16:23 L_mj 阅读(476) 评论(0) 推荐(0)
摘要:私有/公有的属性/方法 【私有属性】:在对象内部使用'var'关键字来声明,而且它只能被私有函数和特权方法访问。 【公共属性】:通过this.variableName来定义而且在对象外部是可以读写的。不能被私有函数所调用,它能被特权方法调用(包括对象的构造方法)和私有方法调用,私有函数只能访问私有的 阅读全文
posted @ 2018-07-19 11:52 L_mj 阅读(514) 评论(0) 推荐(0)
摘要:画扇形的方法 方法一:起始角度是0,那么第一条线就是line(r,0),通过旋转扇形的角度,第二条线就是line(r,0) 第一步为什么是设置原点呢,为什么不用moveTo来设置起始点呢? 因为画布的默认原点在0,0的位置上,如果用moveTo来设置起始点,原点依然还在0,0的位置,而变换是以原点为 阅读全文
posted @ 2018-04-12 15:47 L_mj 阅读(8450) 评论(0) 推荐(2)
摘要:维基百科中的解释: 在计算机科学中,柯里化(英语:Currying),又译为卡瑞化或加里化,是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数而且返回结果的新函数的技术。 顾名思义,柯里化其实本身是固定一个可以预期的参数,并返回一个特定的函数,处理批特 阅读全文
posted @ 2018-04-10 11:40 L_mj 阅读(541) 评论(0) 推荐(0)
摘要:property 和 attribute非常容易混淆,两个单词的中文翻译也都非常相近(property:属性,attribute:特性),但实际上,二者是不同的东西,属于不同的范畴。 property是DOM中的属性,是JavaScript里的对象; attribute是HTML标签上的特性,它的值 阅读全文
posted @ 2018-04-09 15:31 L_mj 阅读(38861) 评论(6) 推荐(21)
摘要:十进制转换为二进制 toString()方法可把一个 Number 对象转换为一个字符串,并返回结果。语法如下: NumberObject.toString(radix); 其中,radix为可选。规定表示最终转换成的数字的基数,使 2 ~ 36 之间的整数。若省略该参数,则使用基数 10。但是要注 阅读全文
posted @ 2018-04-02 21:59 L_mj 阅读(779) 评论(0) 推荐(0)
摘要:与其他语言不同,在JS中,a&&b或者a||b返回的是要么是a,要么是b;而其他语言中返回的是true or false 对于js中的或与运算,需要隐式的转换为boolean类型再来运算;转换规则为: a&&b 如果a为true,则执行b并返回b的值; 如果a为false,则返回false不执行b; 阅读全文
posted @ 2018-04-02 17:42 L_mj 阅读(4201) 评论(0) 推荐(0)
摘要:数据类型 转换为true的值 转换为false的值 Boolean true false String 任何非空字符串 空字符串 Number 任何非零数字值(包括无穷大) 0和null Object 任何对象 null Undefined Undefined 阅读全文
posted @ 2018-04-02 17:32 L_mj 阅读(755) 评论(0) 推荐(0)
摘要:取整、四舍五入 向下取整Math.floor() 向上取整Math.ceil() 四舍五入Math.round()) 保留有效数位n.toFixed() 产生大于等于0小于1的随机数Math.random() 生成Min和Max之间的随机数: 字符串转换为数字 将字符串转换成数字,用parseInt 阅读全文
posted @ 2018-04-02 14:48 L_mj 阅读(890) 评论(0) 推荐(0)