JS学习日记-one

     因为cocos2d-x游戏开发要用到JS,所以开始学习一下JS.

     其实JS大部分语法和c类似,注释为'//','/* */',需要注意的地方是JS中的变量不需要声明就可以使用.语句末尾可以加';',也可以不加.也没有整数和浮点数之分,所有的类型都是对象.可以使用typeof 变量/常量 得到类型.这里有几点需要注意.

(1).对于var x;这种没有初始化的变量,x的类型是Undefined,而Undefined只有一个值,就是undefined.而Undefined的类型变量并不代表着这个变量没有定义.

例:var x;

     alert(typeof x);

     alert(typeof y);

这里两者都输出undefined.

进一步如果这样写

if(x==undefined)  alert("true");//x是未定义的变量

else alert("false");

但是如果x定义了.

var x;

if(x==undefined)  alert("true");//x是已定义的变量

else alert("false");

就会输出true.

说明不管是否定义,都可以使用typeof,但是未定义的不能使用其他运算符.

(2)对于null和undefined,我刚开始并不知道有undefined这种值,所以下意识的以为它指的就是null,然后才发现其实并不是,Null指的其实就是前面说的未定义的变量,它有专用值null,而输出类型是undefined,undefined是从null派生来的.null表示尚未存在(定义)的对象.如果函数或方法要返回的是对象,那么找不到该对象时,返回的通常是null.

总结:没有定义或者不存在的变量值为null,而定义了的没有指定类型的变量,值为undefined.


关于特殊值.

(1)JS中提供一些宏表示特殊值,首先所有的Number都在[Number.MAX_VALUE, Number.MIN_VALUE]之间,而经过计算生成的结果可以不在这两个值之间.

当数字大小大于Number.MAX_VALUE 时,它将被赋予值 Number.POSITIVE_INFINITY,意味着正无穷,而当数字小于Number.MIN_VALUE时,它将被赋予Number.NEGATIVE_INFINITY,表示无穷小.他们分别等于Infinity和-Infinity.

var iResult = iNum * some_really_large_number;

if (isFinite(iResult)) {
    alert("finite");
}

else {
    alert("infinite");
}
isFinite(x)可以判断数字是否是有穷的.

正无穷和负无穷都不能参与运算.

(2)NaN,一个与自身不相等的特殊值.(= =!)

例如输出 alert(NaN==NaN); 输出为false

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值