JavaScript 杂记
Posted 蒲木杉
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript 杂记相关的知识,希望对你有一定的参考价值。
/** * javascript 运算符 */ // instanceof var box = { color: "red" }; box instanceof Array; // false var box = [1, 2]; box instanceof Array; // true /** * JavaScript 数据类型 */ // null 销毁引用 等待垃圾收集器来清理 var box = new Object(); box = null; /** * JavaScript 函数 */ // 用变量初始化函数 var box = function(num1, num2) { return num1 + num2; }; box(1, 2); // 3 // 函数可以传递函数 function mySum(num) { return 10 + num; } function box(mySum, num) { return mySum(num); } box(mySum, 10); // 20 // 函数递归 arguments.callee() function box(num) { if (num == 1) { return 1; } else { return num * arguments.callee(num - 1); } } box(5); // 120 // apply() function box(name, age) { return name + age; } function sum(name, age) { // this表示window作用域 // []表示传递的参数 可以用arguments代替 // box.apply(this, [name, age]) 等价于 box.apply(this, arguments) return box.apply(this, [name, age]); } // box.length 表示函数接收的参数个数 box.length; // 2 sum("test", 18); // "test18" // call() function box(name, age) { return name + age; } function sum(name, age) { return box.call(this, name, age); } sum("test", 18); // "test18" var color = "红色"; var box = { color: "蓝色" }; function sayColor() { return this.color; } sayColor.call(window); // "红色" sayColor.call(box); // "蓝色" /** * JavaScript 变量 */ // 全局变量 也是window的属性 var color = ‘red‘; this.color; // "red" window.color; // "red" window.color = ‘green‘; this.color; // "green" color; // "green" // 局部变量 var box = { color: ‘blue‘, getColor: function() { // this是box对象 return this.color; } }; box.color; // "blue" box.getColor(); // "blue" window.color; // "green" window.box.color; // "blue" // this是window对象 this.color; // "green" this.box.getColor(); // "blue" // if(){} for(){} 函数的()和{}没有封闭作用域 其中定义的变量为全局变量 var color = "red"; console.log(color); // red console.log(box); // undefined if (true) { var color = "yellow"; var box = "circle"; } console.log(color); // yellow console.log(box); // circle var i = -1; console.log(i); // -1 console.log(j); // undefined for(var i = 0, j = 0; i < 1; i++, j++){ console.log(i); // 0 console.log(j); // 0 } console.log(i); // 1 console.log(j); // 1
以上是关于JavaScript 杂记的主要内容,如果未能解决你的问题,请参考以下文章