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 相关文章推荐
预加载css或javascript的js代码
Apr 23 Javascript
javascript中的循环语句for语句深入理解
Apr 04 Javascript
基于jQuery实现最基本的淡入淡出效果实例
Feb 02 Javascript
js实现文字在按钮上滚动的方法
Aug 20 Javascript
举例说明如何为JavaScript的方法参数设置默认值
Nov 17 Javascript
BootStrap实现树形目录组件代码详解
Jun 21 Javascript
bootstrap table分页模板和获取表中的ID方法
Jan 10 Javascript
vue2.0自定义指令示例代码详解
Apr 25 Javascript
Node 搭建一个静态资源服务器的实现
May 20 Javascript
Angular8 Http拦截器简单使用教程
Aug 20 Javascript
layui 弹出层回调获取弹出层数据的例子
Sep 02 Javascript
leaflet加载geojson叠加显示功能代码
Feb 21 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学习之 数组声明
2011/06/09 PHP
解决ajax+php中文乱码的方法详解
2013/06/09 PHP
CodeIgniter启用缓存和清除缓存的方法
2014/06/12 PHP
PHP截取指定图片大小的方法
2014/12/10 PHP
JavaScript创建对象的写法
2013/08/29 Javascript
jQuery中 prop() attr()使用详解
2015/05/19 Javascript
JavaScript深度复制(deep clone)的实现方法
2016/02/19 Javascript
Input文本框随着输入内容多少自动延伸的实现
2017/02/15 Javascript
js面向对象编程总结
2017/02/16 Javascript
JavaScript函数节流的两种写法
2017/04/07 Javascript
js实现字符全排列算法的简单方法
2017/05/01 Javascript
JavaScript实现简单的星星评分效果
2017/05/18 Javascript
网页中的图片查看器viewjs使用方法
2017/07/11 Javascript
Angular4学习教程之DOM属性绑定详解
2018/01/04 Javascript
利用 Chrome Dev Tools 进行页面性能分析的步骤说明(前端性能优化)
2021/02/24 Javascript
python类继承用法实例分析
2015/05/27 Python
python中json格式数据输出的简单实现方法
2016/10/31 Python
PyQt4实现下拉菜单可供选择并打印出来
2018/04/20 Python
对TensorFlow的assign赋值用法详解
2018/07/30 Python
Python实现点阵字体读取与转换的方法
2019/01/29 Python
使用Python Pandas处理亿级数据的方法
2019/06/24 Python
深度学习入门之Pytorch 数据增强的实现
2020/02/26 Python
解决Python spyder显示不全df列和行的问题
2020/04/20 Python
python如何删除文件、目录
2020/06/23 Python
用python爬虫批量下载pdf的实现
2020/12/01 Python
什么是Linux虚拟文件系统VFS
2012/01/31 面试题
公司部门司机岗位职责
2014/01/03 职场文书
小学生暑假感言
2014/02/06 职场文书
商场促销活动方案
2014/02/08 职场文书
物联网工程专业推荐信
2014/09/08 职场文书
2014向国旗敬礼网上签名活动总结
2014/09/27 职场文书
机关党员四风问题个人整改措施
2014/10/26 职场文书
2015年科普工作总结
2015/07/23 职场文书
留学文书中的个人陈述,应该注意哪些问题?
2019/08/23 职场文书
导游词之宿迁乾隆行宫
2019/10/15 职场文书
十大最强电系宝可梦,阿尔宙斯电系之一,第七被称为雷神
2022/03/18 日漫