javascript基本语法


Posted in Javascript onMay 31, 2016

1、运算符

运算符就是完成操作的一系列符号,它有七类:

赋值运算符(=,+=,-=,*=,/=,%=,<<=,>>=,|=,&=)、算术运算符(+,-,*,/,++,--,%)、比较运算符(>,<,<=,>=,==,===,!=,!==)、逻辑运算符(||,&&,!)、条件运算(?:)、位移运算符(|,&,<<,>>,~,^)和字符串运算符(+)。

可能很多人不知道"==="是什么。

在这里,我为大家解释一下,在javascript中,“=="是等同运算符。

等同运算符的比较规则:

当两个运算数的类型不同时:将他们转换成相同的类型

1)一个数字与一个字符串,字符串转换成数字之后,进行比较。
2)true转换为1、false转换为0,进行比较。
3)一个对象、数组、函数 与 一个数字或字符串,对象、数组、函数转换为原始类型的值,然后进行比较。(先使用valueOf,如果不行就使用toString)
4)其他类型的组合不星等。

想两个运算数类型相同,或转换成相同类型后:

1)2个字符串:同一位置上的字符相等,2个字符串就相同。
2)2个数字:2个数字相同,就相同。如果一个是NaN,或两个都是NaN,则不相同。
3)2个都是true,或者2个都是false,则相同。
4)2个引用的是同一个对象、函数、数组,则他们相等,如果引用的不是同一个对象、函数、数组,则不相同,即使这2个对象、函数、数组可以转换成完全相等的原始值。
5)2个null,或者2个都是未定义的,那么他们相等。

而“===”是全同运算符,全同运算符遵循等同运算符的比较规则,但是它不对运算数进行类型转换,当两个运算数的类型不同时,返回false;只有当两个运算数的类型相同的时候,才遵循等同运算符的比较规则进行比较。

例如:null==undefined 会返回真 , 但是null===undefined 就会返回假!

2、表达式

运算符和操作数的组合称为表达式,通常分为四类:赋值表达式、算术表达式、布尔表达式和字符串表达式。

3、语句

Javascript程序是由若干语句组成的,语句是编写程序的指令。Javascript提供了完整的基本编程语句,它们是:
赋值语句、switch选择语句、while循环语句、for循环语句、for each循环语句、do while循环语句、break循环中止语句、continue循环中断语句、with语句、try...catch语句、
if语句(if..else,if...else if ...)、let语句。

4、函数

函数是命名的语句段,这个语句段可以被当作一个整体来引用和执行。使用函数要注意以下几点:

1)函数由关键字function定义(也可由Function构造函数构造)。
2)使用function关键字定义的函数在一个作用域内是可以在任意处调用的(包括定义函数的语句前);而用var关键字定义的必须定义后才能被调用。
3)函数名是调用函数时引用的名称,它对大小写是敏感的,调用函数时不可写错函数名。
4)参数表示传递给函数使用或操作的值,它可以是常量,也可以是变量,也可以是函数,在函数内部可以通过arguments对象(arguments对象是一个伪数组,属性callee引用被调用的函数)访问所有参数。
5)return语句用于返回表达式的值。
6)yield语句扔出一个表达式,并且中断函数执行直到下一次调用next。

一般的函数都是以下格式:

function myFunction(params){

//执行的语句

}

函数表达式:

var myFunction=function(params){

//执行的语句

}
var myFunction = function(){

//执行的语句

}
myFunction();//调用函数

匿名函数,它常作为参数在其他函数间传递:

window.addEventListener('load',function(){

//执行的语句

},false);

5、对象

Javascript的一个重要功能就是面向对象的功能,通过基于对象的程序设计,可以用更直观、模块化和可重复使用的方式进行程序开发。

一组包含数据的属性和对属性中包含数据进行操作的方法,称为对象。比如要设定网页的背景颜色,所针对的对象就是document,所用的属性名是bgcolor,如document.bgcolor="blue",就是表示使背景的颜色为蓝色。

6、事件

用户与网页交互时产生的操作,称为事件。事件可以由用户引发,也可能是页面发生改变,甚至还有你看不见的事件(如Ajax的交互进度改变)。绝大部分事件都由用户的动作所引发,如:用户按鼠标的按键,就产生click事件,若鼠标的指针在链接上移动,就产生mouseover事件等等。在Javascript中,事件往往与事件处理程序配套使用。

而对事件的处理,W3C的方法是用addEventListener()函数,它有三个参数:事件,引发的函数,是否使用事件捕捉。为了安全性,建议将第三个参数始终设置为false;

传统的方法就是定义元素的on...事件,它就是W3C的方法中的事件参数前加一个“on”。而IE的事件模型使用attachEvent和dettachEvent对事件进行绑定和删除。javascript中事件还分捕获和冒泡两个阶段,但是传统绑定只支持冒泡事件。

7、变量

如 var myVariable = "some value";

变量有它的类型,上例中myVariable的类型为string(字符串)

javascript支持的常用类型还有:

object:对象
array:数组
number:数字
boolean:布尔值,只有true和false两个值,是所有类型中占用内存最少的
null:一个空值,唯一的值是null
undefined:没有定义和赋值的变量

实际上javascript的变量是弱变量类型,你赋值给他的是字符串,他就是String .
是数字他就是整形。是true和false他就是boolean型(注意,不能加引号,不然会被当成字符串处理)。

以上就是js基本语法,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
prototype 1.5 &amp; scriptaculous 1.6.1 学习笔记
Sep 07 Javascript
Javascript的构造函数和constructor属性
Jan 09 Javascript
js 关于=+与+=日期函数使用说明(赋值运算符)
Nov 15 Javascript
jQuery 阴影插件代码分享
Jan 09 Javascript
Javascript代码在页面加载时的执行顺序介绍
May 03 Javascript
js中的异常处理try...catch使用介绍
Sep 21 Javascript
javascript操作数组详解
Dec 17 Javascript
js Calender控件使用详解
Jan 05 Javascript
jquery.form.js框架实现文件上传功能案例解析(springmvc)
May 26 Javascript
AngularJS入门教程之数据绑定原理详解
Nov 02 Javascript
vue使用自定义指令实现拖拽
Jan 29 Javascript
JavaScript实现移动端弹窗后禁止滚动
May 25 Javascript
jquery 无限极下拉菜单的简单实例(精简浓缩版)
May 31 #Javascript
通用无限极下拉菜单的实现代码
May 31 #Javascript
JavaScript+Java实现HTML页面转为PDF文件保存的方法
May 30 #Javascript
详解JavaScript中双等号引起的隐性类型转换
May 30 #Javascript
JavaScript中的操作符类型转换示例总结
May 30 #Javascript
jQuery中的通配符选择器使用总结
May 30 #Javascript
移动端jQuery修正Web页面滑动时div问题的两则实例
May 30 #Javascript
You might like
多个PHP中文字符串截取函数
2013/11/12 PHP
php递归方法实现无限分类实例代码
2014/02/28 PHP
PHP使用strtotime获取上个月、下个月、本月的日期
2015/12/30 PHP
thinkPHP中验证码的简单实现方法
2016/12/05 PHP
一段利用WSH修改和查看IP配置的代码
2008/05/11 Javascript
jquery 3D球状导航的文章分类
2010/07/06 Javascript
jQuery筛选器children()案例详解(图文)
2013/02/17 Javascript
div拖拽插件——JQ.MoveBox.js(自制JQ插件)
2013/05/17 Javascript
cookie中的path与domain属性详解
2013/12/18 Javascript
js获取当前地址 JS获取当前URL的示例代码
2014/02/26 Javascript
jQuery实现3D文字特效的方法
2015/03/10 Javascript
JavaScript 浏览器对象模型BOM使用介绍
2015/04/13 Javascript
三分钟带你玩转jQuery.noConflict()
2016/02/15 Javascript
JS实现的在线调色板实例(附demo源码下载)
2016/03/01 Javascript
将鼠标焦点定位到文本框最后(代码分享)
2017/01/11 Javascript
jq checkbox 的全选并ajax传参的实例
2017/04/01 Javascript
Vue Ajax跨域请求实例详解
2017/06/20 Javascript
angularjs 缓存的使用详解
2018/03/19 Javascript
Vue头像处理方案小结
2018/07/26 Javascript
[01:10:58]Spirit vs NB Supermajor小组赛 A组败者组决赛 BO3 第二场 6.2
2018/06/03 DOTA
python字典值排序并取出前n个key值的方法
2018/10/17 Python
python matplotlib画图库学习绘制常用的图
2019/03/19 Python
pandas数据处理进阶详解
2019/10/11 Python
Python中免验证跳转到内容页的实例代码
2020/10/23 Python
韩国CJ食品专卖网:CJonmart
2016/09/11 全球购物
拉斯维加斯城市观光通行证:Las Vegas Pass
2019/05/21 全球购物
软件配置管理有什么好处
2015/04/15 面试题
大学应届生的自我评价
2014/03/06 职场文书
租房协议书怎么写
2014/04/10 职场文书
《理想的风筝》教学反思
2014/04/11 职场文书
建议书的格式
2014/05/12 职场文书
优秀员工评优方案
2014/06/13 职场文书
化学工程专业求职信
2014/08/10 职场文书
单位车辆管理制度
2015/08/05 职场文书
浅谈python中的多态
2021/06/15 Python
CentOS7设置ssh服务以及端口修改方式
2022/12/24 Servers