JavaScript 基本概念(三)

写在前面的话:

       本专栏,主要是用做个人学习使用,主要参考书籍《JavaScript高级程序设计》,主要记录JavaScript学习和使用中的难点和坑点,和主要知识点,很多信息仅作参考使用;本人本专栏的每一篇文章会不断修改和补充和完善,如果您发现有问题和疑问希望大家积极指出,方便我完善文章,谢谢大家。


1.标识符规则:第一个字符必须是一个字母,下划线或美元符号;其他字符可以是字母,下划线,美元符号或数字;不能使用关键字和保留字用作变量

2.启用严格模式"use strict"  可以在函数中启用,也可在文件中启用

3.5种基本数据类型:undefined,null,boolean,number,string;一种复杂数据类型object

4.typeof操作符返回值:"undefined",如果这个值未定义;"boolean",如果这个值是布尔值;"string",如果这个值是字符串;"number",如果这个值是数值;"object",如果这个值是对象或null;"function",如果这个值是一个函数。

注意:typeof 对于未定义的变量和未初始化的变量都返回"undefined"。注意这个语句  alert(null == undefined); //true。把一个变量用来保存object时,未初始化,可以让他等于null:var obj = null。

5.所有类型的值都有与之对应的boolean值,可以调用Boolean(v)进行转换,可以自行百度各种值对应的布尔值

注意:浮点数精度问题  a=0.1,b=0.2 alert(a+b==0.3)//false

6.使用isFinite()判断一个是不是超出范围,超出时会返回true

7.NaN表示非数值,使用isNaN(val)判断一个val是否’不是数值‘,可以判断是不是NaN

8.转化数值函数Number(),parseInt(),parseFloat()

9.转字符函数toString(),val.toString(2),2为基数,表示2进制,Null 和 undefined 值没有这个方法 

10.Object 的每个实例都具有下列属性和方法:

constructor:保存着用于创建当前对象的函数。对于前面的例子而言,构造函数(constructor) 就是 Object()。

hasOwnProperty(propertyName):用于检查给定的属性在当前对象实例中(而不是在实例 的原型中)是否存在。其中,作为参数的属性名(propertyName)必须以字符串形式指定(例 如:o.hasOwnProperty("name"))。              

 isPrototypeOf(object):用于检查传入的对象是否是传入对象的原型。

propertyIsEnumerable(propertyName):用于检查给定的属性是否能够使用 for-in 语句 来枚举。与 hasOwnProperty()方法一样,作为参数的属性名必须以字符 串形式指定。

toLocaleString():返回对象的字符串表示,该字符串与执行环境的地区对应。

toString():返回对象的字符串表示。

valueOf():返回对象的字符串、数值或布尔值表示。通常与 toString()方法的返回值 相同。

重点:自增自减操作符,前置,在同一条语句执行前执行,后置则在执行完之后执行

11.位操作,全部操作在32位上进行,按位非 ~,对应位取反 var a = 25, b = ~a  //b=-26 ;按位与&  25&3 //1;按位或 |;按位异或^;左移<< 又移>>

12. 逻辑与操作运行规则:逻辑与是一个短路操作,第一个表达式能决定结果,就不会运算第二个表达式

如果第一个操作数是对象,则返回第二个操作数;

如果第二个操作数是对象,则只有在第一个操作数的求值结果为 true 的情况下才会返回该 对象;

如果两个操作数都是对象,则返回第二个操作数;

如果有一个操作数是 null,则返回 null;

如果有一个操作数是 NaN,则返回 NaN;

如果有一个操作数是 undefined,则返回 undefined

13.逻辑或操作运行规则:逻辑或也是短路操作,当第一个表达式为true,第二个表达式不运算

如果第一个操作数是对象,则返回第一个操作数;

如果第一个操作数的求值结果为 false,则返回第二个操作数;

如果两个操作数都是对象,则返回第一个操作数;

如果两个操作数都是 null,则返回 null;

如果两个操作数都是 NaN,则返回 NaN;

如果两个操作数都是 undefined,则返回 undefined。

14.逻辑非运算规则:

如果操作数是一个对象,返回 false;

如果操作数是一个空字符串,返回 true;

如果操作数是一个非空字符串,返回 false;

如果操作数是数值 0,返回 true;

如果操作数是任意非 0 数值(包括 Infinity),返回 false;

如果操作数是 null,返回 true;

如果操作数是 NaN,返回 true;

如果操作数是 undefined,返回 true。

15.函数进行两次定义时,函数名字只属于后定义的函数体

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值