码迷,mamicode.com
首页 > 编程语言 > 详细

JavaScript基础之四(调用表达式和运算符)

时间:2015-11-29 19:36:48      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:

1.函数的调用和对象创建

  1)一对圆括号():用来调用函数;

  2)如果在函数名称前使用了new fn(),这就是在创建对象了;分为两个步骤:1.new 会创建一个空的对象{},2.具体执行fn(),新的对象作为值传递给了this,给this添加属性就是在给新创建的对象添加属性了。

  3)如果构造函数没有返回值,则新创建的对象就是当前的,如果构造函数有返回值,则该返回值代表新创建的对象。

2.运算符

  1)关于顺序:①所有的1元运算符和3元?:都是从右往左计算;②大部分2元运算符从左往右;③=和与=结合的运算符从右往左;④属于2元运算符计算顺序从左往右

  2)几种特殊的运算符:void(返回undefined),typeof(返回String),delete(删除属性返回Boolean)

  3)所有的Number都是浮点类型,所以在除法和取模运算中,不能期望我们得到某些结果。比如2.1+1.8=3.9000000000000004,3+0.9=3.9

3.+运算符

  可以在Number和String两种类型进行操作,当String和Number进行计算时,会优先转换为String:1+2=3,"1"+2="12","1"+"2"="12"

    true+true=2,1+{}="1[object Object]"2+null=2(null转换为0)2+undefined=NaN

4.===:严格相等,类型和值必须一样,null===undefined ,0===-0,0===+0,Infinity===Infinity

5.比较运算符只能匹配Number和String,对于不是这两种类型的会进行转换,首先转换为基本类型(valueof),然后转换为toString。Infinity比任何Number大,-Infinity比任何Number都小。如果出现NaN参与比较,始终返回false

6.String和Number比较,优先转换为Number,例如"11">2 --true

7.in运算符

  技术分享

8.instanceof:判断是否为对象的实例,所有的对象都是Object的实例。这针对对象,值类型一律返回false

9.可以转换为false的值null, undefined, 0, -0, NaN, and "";使用!!可以把任意一个值转换为对应的Boolean值

10.eval运算符:javascript可以把String转换为javascript代码,并返回执行结果。例如eval("3+2")  ——>5. 应该尽量避免使用。

11.typeof

  技术分享

12.delete:删除对象的属性或数组的元素,如果属性或元素不存在返回false。

 

JavaScript基础之四(调用表达式和运算符)

标签:

原文地址:http://www.cnblogs.com/mszhangxuefei/p/js-04.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!