JavaScript深入浅出学习笔记(二)—表达式和运算符
一.表达式
表达式是指能计算出值的任何可用程序单元。—Wiki
表达式是一种JS短语,可使JS解释器用来产生一个值。—《JS权威指南》
1.原始表达式
a.常量、直接量,如3.14,"test"
b.关键字,如null,this,true
c.变量,如i,k,j
2.复合表达式
3.数组、对象的初始化表达式
[1,2]:new Array(1,2);
[1,,,4]:[1,undefined,undefined,4]
{x:1,y:2}:var o = new Object(); o.x=1;o.y=2;
4.函数表达式
var fe = function(){}; (function(){console.log('hello world');})();
5.属性访问表达式
var o={x:1}; o.x o.['x']
6.调用表达式
func();
7.对象创建表达式
//用new来建一个构造器或函数,可以传参 new Func(1,2); //如果没有参数,可以把括号直接省略 new Object;
二.运算符
1.按操作数个数分类
一元:+num
二元:a+b
三元:c?a:b
2.按功能分类
a.赋值运算符:x+=1
b.比较运算符:a==b
c.算术运算符:a-b
d.位运算符:a|b
e.逻辑运算符:exp1&&exp2
f.字符串运算符:"a"+"b"
g.特殊运算符:
条件运算符:
var val=true?1:2;//val=1
delete运算符:
var obj = {x:1}; obj.x; //1 delete obj.x obj.x; //undefined
逗号运算符:a,b
var val=(1,2,3);//val = 3
IE9开始,新增了Object.defineProperty方法,此方法可以设置configurable属性,如果它被设置成false,就不能delete掉。
var obj = {}; Object.defineProperty(obj, 'x', { configurable: false, value:1 }); delete obj.x;//false obj.x; //1
in运算符:
window.x = 1; 'x' in window;//true
instanceof、typeof运算符:
{} instanceof Object //true typeof 100 === 'number' //true
new运算符:
function Foo(){} Foo.prototype.x = 1; var obj = new Foo(); obj.x; //1 obj.hasOwnProperty('x'); //false obj._proto_.haOwnProperty('x');//true
说明:hasOwnProperty方法可以用来判断属性是对象上的还是对象的原型链上的。
this运算符:
this; //window(浏览器) var obj = { func: function() {return this;} }; obj.func();//obj
运算符void:不管void后的操作数是多少,都会返回undefined
void 0 //undefined void(0) //undefined
上一篇: AliOS Things图形界面开发指南 物联网函数
下一篇: php自定义函数的参数默认值用法详解
推荐阅读
-
JavaScript学习笔记整理_关于表达式和语句
-
js权威指南学习笔记(二)表达式与运算符
-
JavaScript正则表达式学习笔记(二) - 打怪升级
-
前端学习笔记三:JavaScript(2)变量的分类和作用域+利用浏览器调试模式测试+HTML事件+表示特殊字符(+运算符+各种循环和条件语句【略】)
-
Lua学习笔记之运算符和表达式
-
JavaScript学习笔记整理_关于表达式和语句
-
Javascript学习笔记之 函数篇(一) : 函数声明和函数表达式_基础知识
-
JavaScript深入浅出学习笔记(二)—表达式和运算符
-
js权威指南学习笔记(二)表达式与运算符
-
javascript学习笔记(二)数组和对象部分_基础知识