一. in运算符 in运算符希望它的左操作数是一个字符串或可以转换为字符串,希望它的右操作数是一个对象.如果右侧的对象拥有一个名为左操作数值的属性名,那么表达式返回true.例如: var point = {x:1, y:1}; 'x' in point //=>true:对象有一个名为'x'的属性 'z' in point //=>false:对象中不存在名为'z'的属性 'toString' in point //=>true:对象继承了toString()方法 var data =
通过运算符可以对一个或多个值进行运算,并且一定有运算结果返回 算数运算符 算数运算符包括相加(+).相减(-).相乘(*).相除(/).取模(%).任何值与字符串相加都会转换为字符串,做的是字符串连.除了与字符串做加法,当对非 Number 类型的值进行运算时,会将这些值转换为 Number 再运算.任何值和 NaN 做运算都得 NaN //js里面不区分整数和小数 var j = 123; alert(j/1000*1000); // j/1000*1000 在java里面得到结果是 0
var a = '0';var b = a ? 'me':'hi'; console.log(b);//false 有: undefined , 0, '', false,null//true 有:'0',[],{},' ' var a = ' ';var b = a || '为假的';console.log(b);//为假的,有: undefined , 0, '', false,null//原样输出的 有:'0',[],{},' ' var a = {};var b = a
基本数据类型: number: var a=1; string: var str='123'; boolean: var b1=false; null:var c1=null; //打印结果为 object unfined: var d1; 运算符 1赋值运算符 以var x = 12,y=5来演示示例 2算数运算符 var a = 5,b=2 3比较运算符 var x=5; 一个特殊的情况 var b1 = 'one'; var b2 = 'two'; // NaN. ==== not a n
其实事情是这样的,最近看到不少朋友讨论一道据说不知道哪儿的笔试题目,题目如下: var a = {n:1}; var b = a; a.x = a = {n:2}; 请写出a.x的值. 当然通过运行,大家很快找到答案undefined. 说实话这道题似乎难住了不少人,在问题还没解决时,突然有人喊了一句a = a.x = {n:2}结果也是一样耶,此时大家都是一脸懵逼的状态. 这个其实很好理解,a.x = a = {n:2}这个包括两个过程,一是“解析”(其实是“.”操作符的优先级要高于赋值),然