JavaScript学习心得
javaScript十分的强大,所以自然而然学起来也是不易的,想要掌握它的核心,把它理解透更是不易的,但只要你能够静下心来,耐心的去钻研,学习,还是可以把它给学好的,加油吧!
下面是一些JavaScript的学习知识点:
javaScript 对象的反射及应用
使用 JSON 创建对象
关于 BOM
SVG 中使用 JavaScript
浏览器中的 JavaScript
正则表达式--简单模式
正则表达式--JavaScript 实现基础
FireFox 2 beta 1 支持 JavaScript 1.7
JavaScript 中的继承(下)
JavaScript 中的继承(上)
JavaScript 中的对象(下)
JavaScript 中的对象(上)
JavaScript 调试工具
ECMAScript 基础
JavaScript 基本组成
以上是JavaScript的一些核心知识
arguments是函数的参数对象,caller返回一个调用当前函数的引用,只有在执行时才有定义。
length函数定义时,定义参数的个数
prototype函数内置的属性,指针对象,指向原型对象,之前专门描述过。函数在创建时,随着赋予一个prototype属性,它的值是一个拥有constructor属性且值即为该函数的对象。
原型对象同样用一个__proto__原型链属性,__proto__内置属性,函数构建被赋予,寻找原型链的属性
2. 函数通常是由5个部分组成。
1) function 关键字,标识了该对象是一个特殊数据类型function而不是object。
2) 函数名,通常一些会被多次调用的函数在定义时,必须给定函数名。函数名通常是小写字母开头,采用“驼峰命名法”命名。
3) 参数。参数并不是必须的。实际上,在JS函数定义时并不需要对参数规定类型,调用时也不需要对传入参数进行类型检查,更自由的是在调用时甚至是不用检查参数个数。正因为JS有这样的特性,在实际编程会给我们带来不少麻烦,如果我们想将JS编程代码做到更严谨高效的话,那么在函数定义者部分我们就要掌握下面提及的方法。
我们会用到arguments,这是JavaScript函数内部的一个特殊对象,是一个类数组对象,用于保存所有传入函数的参数。函数可以通过它来访问所有调用时传递过来的参数列表,也使得JS函数参数拥有了以上的不确定性。
arguments.callee 通常使用在匿名函数中,callee是arguments的一个属性,指向这个arguments对象的函数。这里可能会混淆的是this,起初我也是认为回去当前函数参数个数可以写作:this.length。但是在函数内部,this指向的函数执行的环境对象,而不是函数本身。
可以直接用参数变量名进行判断,typeof语法中括号是可选项。typeof对string、number、function、undefined、boolean等几种类型判断完全可以,但是很多情况我们会将一个数组或者一个自定义对象实例作为一个参数来传递,则需要以下方式处理:
instanceof操作符之前提及过,可以判断变量是否是对象的一个实例,对于JS内置对象和自定义对象都适用。
在实际编程过程中调用函数时,可能参数值并不是我们想要的,值在Boolean环境下为false,就需要为其设置默认值。但是Number类型参数需要注意0在Boolean环境下返回值是false。
上述例子中我们使用”||”操作符代替了if判断,但是这前提是变量必须预先声明,否则就会报引用错误“name is undefined”,实例中“name”被作为定义参数传入,相当于var。
null被作为参数传入,这样的做法经常在特殊情况下被主动用作参数占位符,当然也可以使用undefined。
4) 函数体,包括在{}内的一组逻辑嵌套语句,这些语句是函数的主体,在函数被调用时执行。良好的变成习惯是一个函数仅仅只做一件事情,所以出现在一个函数体内的逻辑仅仅只是围绕以个方向的逻辑展开的,不要企图在意个函数内做很多事,那么只会让代码更繁琐,变得没有条理。
5)返回值。JS函数在创建时,并不需要声明返回值,默认都返回undefined。返回值类型在return之后确定,return在函数体内的作用是提前终止函数运行并输出相应的表达式或值,可以出现在函数体任何位置。
JavaScript学习心得的更多相关文章
- WGZX:javaScript 学习心得--2
转贴javascript心得(二) 标签: javascriptajaxweb开发htmlfirefox框架 2008-09-11 10:56 636人阅读 评论(0) 收藏 举报 分类: UI(2 ...
- WGZX:javaScript 学习心得--1
标签: javascriptiframedreamweaver浏览器htmltable 2008-09-11 10:50 1071人阅读 评论(0) 收藏 举报 分类: UI(21) 1,docu ...
- JavaScript学习心得(十)
Ajax Ajax是浏览器中使用JavaScript进行服务器后台请求,读取附加信息或者导致服务器响应的过程. Ajax广泛用于从服务器读取数据,并用所得到的数据更新页面,以及向服务器发送数据 Aja ...
- JavaScript学习心得(八)
Cookie是Netscape发明的技术,是动态网站必不可少的部分,用于浏览器请求Web页面的超文本传输协议是一种无状态的协议. 两种方法维护状态:使用会话(session)(使用服务器技术实现,数据 ...
- JavaScript学习心得(七)
一 创建事件监听器 开发人员往往使用事件和元素组合来命名事件处理函数. 创建事件监听器方法: 嵌入式事件处理器即将JavaScript函数赋值给HTML元素属性(不推荐使用:污染HTML:无法应用渐进 ...
- JavaScript学习心得(六)
函数 对函数参数没有任何类型检查(弱类型),在必要时在函数内加上类型检查(typeof): JavaScript的函数参数无法设置默认值(可以通过检查参数,当为undefined时设置一个值 func ...
- JavaScript学习心得(五)
一时间 1970年1月1日是电脑常用的时间参考点,称为纪元(Epoch)或者UNIX时间戳(UNIX Epoch).JavaScript中的Date对象能够表示1970年1月1日子夜前后1亿天之内的任 ...
- JavaScript学习心得(四)
条件语句 任何事物非真即假. 在JavaScript中,条件判断以下情况为假: false NaN 0 空串 null undefined 在使用相等运算符时,建议将数字写在相等运算符的左边.全等比较 ...
- JavaScript学习心得(三)
一 变量 var:变量声明 变量名 =:赋值 简单值类型 全局变量:编程的一般规则——应用程序应该只完成必须的最少功能,如果一个变量不是绝对必需,就不该是全局:全局变量对维护性能不利,因为需要一直维护 ...
随机推荐
- UVa816,Ordering Tasks,WA
#include <iostream> #include <cstdio> #include <string> #include <cstring> # ...
- 文本可视化[二]——《今生今世》人物关系可视化python实现
文本可视化[二]--<今生今世>人物关系可视化python实现 在文本可视化[一]--<今生今世>词云生成与小说分析一文中,我使用了jieba分词和wordcloud实现了,文 ...
- PLSQL Developer oracle导入导出表及数据
1.进入PLSQL Developer 2.创建新用户(如需要新表空间则需先创建新表空间再创建用户) 3.打开菜单Tools->Export User Objects 导出表及视图等创建SQL ...
- LINUX 笔记-watch命令
命令格式:watch[参数][命令] 可以将命令的输出结果输出到标准输出设备,多用于周期性执行命令/定时执行命令 命令参数: -n或--interval watch缺省每2秒运行一下程序,可以用-n ...
- Linux系统LVM基本使用
一.关于LVM的几个概念 1. LVM:逻辑卷管理器,是建立在物理存储设备上的一个抽象层,允许你生成逻辑存储卷, 与硬件相关的存储设置被其隐藏,你不用停止应用或卸载文件系统来调整卷大小 或迁移数据,可 ...
- LeetCode 661. Image Smoother (图像平滑器)
Given a 2D integer matrix M representing the gray scale of an image, you need to design a smoother t ...
- LeetCode 64. Minimum Path Sum(最小和的路径)
Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which ...
- LeetCode 1. Two Sum (两数之和)
Given an array of integers, return indices of the two numbers such that they add up to a specific ta ...
- MySQL(十六)之MySQL用户管理
一.MySQL用户管理概述 MySQL是一个多用户的数据库,MYSQL的用户可以分为两大类: 超级管理员用户(root),拥有全部权限 普通用户,由root创建,普通用户只拥有root所分配的权限 二 ...
- android+eclipse+mysql+servlet(Android与mysql建立链接)
原创作品,允许转载,转载时请务必以超链接形式标明文章 原创地址 .作者信息和本声明.http://www.cnblogs.com/zhu520/p/7724524.html 经过两天的时间我终于把A ...