-
JavaScript 正则表达式 test方法
test 正则表达式与指定的字符串匹配 ,返回true;否则false。var reg=/\w/g;reg.test('a')truereg.test('a')falsereg.test('a')truereg.test('a&
浏览量:23 发布时间:2021-07-12 14:53:19 -
Array.prototype.concat.apply方法拍平多维数组。
使用 Array.prototype.concat.apply 拍平数组Array.prototype.concat.apply([],[1,2,3,[4,5,[6,7]],8,9])// [1, 2, 3, 4, 5, [6,7], 8, 9]
浏览量:18 发布时间:2021-07-04 21:40:31 -
Object.prototype.toString.call 判断变量类型
使用Object.prototype.toString.call判断变量的类型Object.prototype.toString.call(123)"[object Number]"Object.prototype.toString.call({})"[object Object]"Object.pr
浏览量:14 发布时间:2021-07-04 16:55:19 -
JavaScript 中的数组的判断
判断是否数组
方法1、var a=[];a.constructor===Array;true
方法2、a instanceof Array;true
方法3、Object.prototype.toString.call(a)==="[object Array]"true
浏览量:13 发布时间:2021-03-02 21:33:29 -
JavaScript 中的数组的去重
数组去重
方法1:利用对象属性不能重复var arr = [1, 1, 1, 2, 2, 2, 3, 3, 3, "a", "a", "b", 1, 2, 3, 0, 0];var obj = {}, arr2 = [];for (var i = 0; i < arr.length; i+浏览量:14 发布时间:2021-03-02 20:58:04
-
JavaScript 中的数组拷贝
数组的拷贝:
1、浅拷贝var a={ name:'名字', id:1 };var b={};for(var key in a){ b[key]=a[key];}浏览量:11 发布时间:2021-03-02 19:44:51 -
JavaScript 中的错误类型
1、SyntaxError 语法错误
例:var 1=1;Uncaught SyntaxError: Unexpected numbervar 1ab=1;Uncaught SyntaxError: Invalid or unexpected token
2、RangeError 范围错误
例:v浏览量:8 发布时间:2021-03-02 13:37:18 -
JavaScript arguments.callee
arguments.callee是指向正在执行的函数指针。
可以用于函数的递归调用
如递归阶乘函数:function factorial(a){ if(a<=1){ return 1; }else{ return a*ar浏览量:10 发布时间:2021-02-22 10:04:31 -
JavaScript 垃圾回收机制
标记清除:最常用的垃圾收集方式
当变量进入环境时,标记“进入环境”。如函数中声明一个变量
此时不能释放进入环境的变量所占用的内存。
当离开环境时标记时,标记&ld浏览量:10 发布时间:2021-02-19 11:40:22 -
JavaScript 中的延迟脚本及异步脚本
HTML4.01中可使用defer属性,高速浏览器立即下载,但延迟执行。
<script src="" defer="defer"></script>
标记为defer的脚本会按照先后顺序执行。
但脚本会先于DOMContentLoade浏览量:8 发布时间:2021-01-31 17:22:08
-
JavaScript 中的严格模式 use strict的使用
ECMAScript 5中提出了严格模式,use strict,限制了一些不规范的写法。
例如:
1、未声明的全局变量赋值会抛出ReferenceError ,而不会默认创建一个全局变量。
2、使用with、eval等浏览量:10 发布时间:2021-01-26 09:34:03 -
JavaScript 语句和表达式
语句都有一个结果值,可在控制台中输入语句,默认情况下控制台会显示所执行的最后一条语句的结果值。
规范定义var 的结果值是undefined;
例:var a=2*6;var c=a;c;其中 3*6 、a 、浏览量:20 发布时间:2021-01-07 11:56:36 -
JavaScript Object.create()的使用
调用Object.create()时,将创建一个新的对象并将新对象的__proto__指向指定的对象。
function f(){};
var a=Object.create(f);
a.__proto__===f;//true
浏览量:30 发布时间:2021-01-06 11:02:37 -
JavaScript prototype原型链
函数都有一个prototype属性且是对象,包括Date,Array,String,Object;
只要可以使用 new 操作符进行“构造函数调用”的函数都有prototype属性。
例:new Date(); new Arr浏览量:28 发布时间:2021-01-05 20:33:51 -
JavaScript 在原型链中设置属性值
考虑obj.a=123;
1、如果当obj对象中存在名为a的属性时,这条赋值语句只会修改原有属性的值。
2、如果a不直接存在于obj中时,则会遍历原型链,如果原型链中也不存在时,则直接添加到o浏览量:20 发布时间:2021-01-05 15:31:07