-
函数
函数是一个代码块,封装了一系列的代码。例如:
$(function(){ var x=2; //函数1 function calc1(){ return x=x*2; }; //函数2 function calc2(){ x=x*2; }; console.log(calc1()); >>4 console.log(calc2()); >>undefined //没有返回值,将会返回undefined });
函数相当于对象,所以可以像处理对象一样的处理函数
>可以将函数赋予一个变量
>保存在一个数据结构中(数组或者对象)
>把函数当成参数传递给其他函数
>将函数作为另一个函数的返回值
$(function(){ var calc = function(x){ return x*2; }; console.log(calc(5)); });
匿名函数:将一个函数表达式包装在一对圆括号中,然后立即调用改函数
$(function(){ (function(x,y){ console.log(x+y); })(5,6); });
该模式用于确保代码块的执行按照预期的效果执行,比如下面
$(function(){ var x = 42; var message = (function(x){ return function(){ console.log("x值等于"+x); }; })(x); message(); x=12; message(); });
输出都是 x值等于42,无论在外部x的值发生变化,不影响函数执行的x的值
-
理解执行上下文
执行上下文是一种对象,可以通过this访问执行上下文。 -
作用域和闭包
JavaScript中,作用域维持在函数级别,并非块级别,this关键字绑定于全局名称空间,当在一个方法创建一个内部函数时,内部函数this将绑定全局命名空间,而不是绑定于该方法
$(function(){ obj = {}; obj.method = function(){ //可以将this赋予一个that变量 var that = this; this.counter = 0; var count = function(){ //这里的this绑定的还是全局obj,所以输出是undefined console.log(this.counter); that.counter +=1; console.log(that.counter); }; count(); count(); console.log(this.counter); }; obj.method(); }); >>>undefined >>>1 >>>undefined >>>2 >>>2
-
访问级别
JavaScript默认对象中所有成员都是公有和可访问的,要实现私有方法或属性,可以使用闭包
$(function(){ console.log(this); function TimeMachine(){ //私有成员 var destination = "2015"; //公有成员 //this代表TimeMachine()对象 console.log(this); this.getDestination = function(){ return destination; }; } var time = new TimeMachine(); console.log(time.getDestination()); >>>2015 console.log(time.destination); >>>undefined });
- JavaScript数组
创建方式
1、var array1 = new Array();
array1[0] = 1;
array1[1] = "a string";
2、var niceArray = [1,2,3]
移除数组元素,使用delete delete array1[0];但是不会改变数组长度,只是在数组中留下一个空元素 - JavaScript最佳实践
将字符串转换为数值,最好使用操作符(+) +“010”;
使用等同(===)操作符比较两个值
- 浏览: 12233 次
相关推荐
jQuery基础教程 前端工程师必备的PS技能——切图篇 结合个人经历总结的前端入门方法 效果类 地址 弹出层 焦点图轮播特效 工具类 地址 css sprite 雪碧图制作 版本控制入门 – 搬进 Github Grunt-beginner前端自动化...
jQuery基础教程 前端工程师必备的PS技能——切图篇 结合个人经历总结的前端入门方法 效果类 地址 弹出层 焦点图轮播特效 工具类 地址 css sprite 雪碧图制作 版本控制入门 – 搬进 Github Grunt-beginner前端自动化...
java安卓仿微信聊天软件源码 内容整理自 's repositories: ...jQuery基础教程 前端工程师必备的PS技能——切图篇 结合个人经历总结的前端入门方法 效果类 地址 弹出层 焦点图轮播特效 工具类 地址 cs
jQuery基础教程 前端工程师必备的PS技能——切图篇 结合个人经历总结的前端入门方法 效果类 地址 弹出层 焦点图轮播特效 工具类 地址 css sprite 雪碧图制作 版本控制入门 – 搬进 Github Grunt-beginner前端自动化...
jQuery基础教程 前端工程师必备的PS技能——切图篇 结合个人经历总结的前端入门方法 效果类 地址 弹出层 焦点图轮播特效 工具类 地址 css sprite 雪碧图制作 版本控制入门 – 搬进 Github Grunt-beginner前端自动化...
jQuery基础教程 前端工程师必备的PS技能——切图篇 结合个人经历总结的前端入门方法 效果类 地址 弹出层 焦点图轮播特效 工具类 地址 css sprite 雪碧图制作 版本控制入门 – 搬进 Github Grunt-beginner前端自动化...
jQuery基础教程 前端工程师必备的PS技能——切图篇 结合个人经历总结的前端入门方法 效果类 地址 弹出层 焦点图轮播特效 工具类 地址 css sprite 雪碧图制作 版本控制入门 – 搬进 Github Grunt-beginner前端自动化...
jQuery基础教程 前端工程师必备的PS技能——切图篇 结合个人经历总结的前端入门方法 效果类 地址 弹出层 焦点图轮播特效 工具类 地址 css sprite 雪碧图制作 版本控制入门 – 搬进 Github Grunt-beginner前端自动化...
jQuery基础教程 前端工程师必备的PS技能——切图篇 结合个人经历总结的前端入门方法 效果类 地址 弹出层 焦点图轮播特效 工具类 地址 css sprite 雪碧图制作 版本控制入门 – 搬进 Github Grunt-beginne
亚信java笔试题 keep-learning 收集跟前端有关的学习资讯 ...jQuery基础教程 前端工程师必备的PS技能——切图篇 结合个人经历总结的前端入门方法 工具类 工具类 地址 前端人的俱乐部 真可以解放你的收藏夹 如何优雅
java安卓仿微信聊天软件源码 ...jQuery基础教程 前端工程师必备的PS技能——切图篇 结合个人经历总结的前端入门方法 工具类 工具类 地址 前端人的俱乐部 真可以解放你的收藏夹 如何优雅地使用Sublime Text 新编
java安卓仿微信聊天软件源码 Front--end Front--end--tutorial 综合类 | 地址 --- | --- 前端知识体系| ...jQuery基础教程| 前端工程师必备的PS技能——切图篇| 结合个人经历总结的前端入门方法| 效果