《JS高级程序设计》读书笔记
2016-01-13 17:21
405 查看
复制变量值差别
普通复制var num1 = 5; var num2 = num1; num1 = 6; console.log(num1);//6 console.log(num2);//5
2. 引用复制
var obj1 = new Object(); var obj2 = obj1 ; obj1.name = 'Liz'; console.log(obj2.name);//Liz
没有块级作用域
Javascript不会像C、C++、Java一样由花括号来封闭代码块。如下图,在if中定义的color会被添加到全局环境,for循环液一样。if (true) { var color = "blue"; } console.log(color);
JS查询标识符
var color = "blue"; function getColor (argument) { var color = "rad" return color; } console.log(getColor());
JS先查询局部变量再查询
如果在局部环境中搜索到同名标识符,则搜索会停止。
转换方法
所有对象都具有toLocaleString()、toString()、valueof()方法。toString()、valueof()方法返回值相同,即每个值的字符串形式拼接形成一个以逗号分隔的字符串。
操作方法
·slice()·splic()
没有重载
函数内部属性
函数内有两个特殊对象arguments(除了包含传入函数的所有参数还有一个属性callee指向拥有这个arguments对象的函数)和this。arguments对象
function factorial (num) { if (num<=1) { return 1; }else{ return num*factorial(num-1); } }
function factorial (num) { if (num<=1) { return 1; }else{ return num*arguments.callee(num-1); } }
虽然两种写法都实现了递归,并且都非常简单,但在耦合性上,第二种写法要好多了。
this对象
this是函数在执行时所处的作用域(当在网页是全局作用域中调用函数时,this对象引用的就是window)相关文章推荐
- 详解JavaScript中localStorage使用要点
- 上传插件webuploader.js的使用示例
- jsoncpp 构造空数组
- javascript图片切换综合实例(循环切换、顺序切换)
- jstack(查看线程)、jmap(查看内存)和jstat(性能分析)命令
- 在线演示红黑树(javascript)
- JS 一定要放在 Body 的最底部么?聊聊浏览器的渲染机制
- JS 判断 Radio 单选按钮是否为选中状态 并弹出 值信息
- ExtJS4 - 文本框之 maxLength ,阻止用户输入过多的字符
- 从接口读取数据,Json解析后显示在RecyclerView上
- Javascript学习笔记04 ——变量,作用域,内存问题
- JSHint 配置浅析
- js获取select标签选中的值
- js 获取当月天数
- JS继承
- JavaScript小经验小工具-总结一
- Js 正则表达式的一些使用示例
- javascript简单的认识下return语句+2015的总结+2016的展望
- javascript 的变量提升特性
- javascript 上传图片前预览图片