javascript代码实例教程-javascript 基础一

发布时间:2019-02-01 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了javascript代码实例教程-javascript 基础一脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
小宝典致力于为广大程序猿(媛)提供高品质的代码服务,请大家多多光顾小站,小宝典在此谢过。 两年前在重温javascript红宝书《javascript高级程序设计》时,方便自己临时查阅某些忘记的基础知识,顺便用evernote整理了一下笔记。这些年在cnblogs拜读各位大神的bLOG,而自己没写过公开的blog。现在把笔记整理上来,希望对入门的童鞋有点点帮助~

 

  javascript基础一,后面还有两篇哦~可能个别文字或者表达有问题,欢迎各位指出  

 

  附上evernote的公开链接:https://app.yinxiang.COM/shard/s10/sh/81bef8e2-f56f-4f28-bb74-ed81f413de2c/3d14cd48699ce4a4a2cea8f55fe8f0CF

 

标识符:以字母、下划线或者美元符号开头,标识符的其他字母可以是字母、下划线、美元符号或者数字。

不能以保留字、关键字、true、false或者null作标识符

js区分大小写

VAR   var是一个关键字

标识符即变量的名称

区分大小写

变量

定义了而未初始化(即赋值)的变量,其值为undefined。

undefined:任何未定义或者定义了但未初始化的变量,都会保存undefined,使用未定义变量会报错

注意函数中定义变量为局部变量,随函数退出时销毁。

变量可以保存任何类型的值,而且可以随时改变保存的类型。

数据类型(6种)

5种基本(简单)数据类型:Undefined、Null、Boolean、String、Number

1种复杂类型:Object

tyPEof操作符

返回一个字符串   eg:typeof "string"

"undefiend"-这个值未定义或者未初始化

"string"-这个值是字符串

"boolean"-这个值是布尔值

"number"-这个值是数值

"object"-这个值是null或者对象

"function"-这个值是函数

注意:返回的字符串是小写字母开头

Undefined类型

声明(定义)了而未初始化的变量保存着undefined值

未定义的变量直接使用会报错(typeof操作符例外)

typeof 未定义的变量和typeof未初始化的变量都返回"undefined",由此typeof区分不了为定义的变量和未初始化的变量

变量定义后推荐立即初始化

Null类型

null值表示一个空指针对象!

故 var car =  null; alert(typeof car); 返回object     因为null其实是一个特殊的对象!

若一个变量准备保存对象,最好初始化为null,表示它为对象,只要检查它是否等于null就知道是否保存了一个对象的引用。即要保存对象的变量还没真正保存对象,就应该明确让变量保存null值。

undefined派生自null,即alert(null == undefined)  返回true,但其间发生了类型转换。

Boolean类型

只有两个值:true和false,注意大小写

所有数据类型都有与boolean类型相对应的值,通过转型函数Boolean()实现,注意在判断条件中自动调用转型函数。

Boolean()的转换规则(红皮书P23)

Number类型

数值表示   不是0开头表示10进制(12),0开头且以8为基数表示8进制(070),0x开头且以16为基数表示16进制(0xaf)。

运算时,数值始终转为十进制,结果也以十进制来表示。

浮点数:该数值必须只包含一个小数点,而且小数点后面至少有一位数字。

注意浮点数在某些情况下会自动转为整数

浮点数数值计算会产生舍入的误差问题,不要测试某个特定的浮点数值

数值范围:ECMAScript表示范围:Number.MIN_VALUE至Number.MAX_VALUE

超出范围,被转换为特殊的InfinITy,正无穷Infinity,负无穷-infinity

isFinite()函数检查是否在最大和最小值之间,是则返回true,否则返回false

NaN:非数值,表示一个本来要返回数值的操作数未返回数值的情况。

任何涉及NaN的操作(如NAN/0)都返回NAN,在计算中要注意

NaN不等于任何值,包括他自身(只能通过isNaN()函数来判断是否为NaN),isNaN()尝试转换传入的参数为数值

数值转换

Number()函数:可以传入任何数值类型

如果是Boolean,true为1,false为0

数字值,简单的传入和返回

Undefined,始终返回NaN

Null,始终返回0? Chorme25 返回NaN

字符串:

只含有数字,则转为十进制,会忽略前导的0

含有合法的浮点数,转为浮点数,同样忽略前导的0

含有有效的十六进制格式(如:0xf),转为十进制返回(注意:八进制就不能识别出来,按照规则1来处理)

空字符串,返回0

字符串包含除上述的字符外,其他都转为NaN

对象:先调用valueOf()方法,按照前面的规则处理,如果是NaN,则再调用toString()方法,再次按照规则处理。

parseint()函数:只能转入字符串,原理:看是否符合数值模式

他会忽略开始的所有空格,找到第一个非空格字符

找到的第一个字符不是数字字符或者是负号,则返回NaN

注意:空字符串parseInt()返回非数值NaN,而Number()返回0

如果第一个字符是数字字符,则会解析到不是数字字符为止,注意:小数点不是有效的数字字符!

parseInt()能识别各种整数格式(八进制、十进制、十六进制),注意Number()函数只能识别十进制、十六进制

eg: parseInt("0x15")  返回21(16*1+5)

eg:parseInt("07")  返回7,当做十进制的7

parseInt()还能指定转换基数,即返回何种整数格式,eg:parseInt("010",8);返回8,结果也以八进制返回

注意:指定基数时,是指把待处理字符串显示输出为指定的进制

区别:number.toString()中,number被识别为十进制,而且number一定为Number类型,之后再按照传入的基数返回toString()的值

parseFloat()函数:只能转入字符串

与parseInt()类似,忽略前导的0,找到第一个合法的浮点数字字符,小数点是合法的,故可以是以小数点作为第一个字符

区别:parseFloat()可以识别所有浮点格式(指科学计数法,返回的不是科学计数法的形式),但只能解析十进制值,任何十六进制都会转为0,八进制按照十进制方式解析,因为八进制是以0作为前导

parseFloat()没有转换基数

parseFloat()可以解析包含合法整数的字符串

String类型

字符字面量

转义序列   eg:   /b(空格)   /n(换行)  /'   /"(转义单、双引号)

具有长度属性length,对于单字节字符有效,双字节字符不精确

特点:字符串是不可变的,一旦创建,他们的赋值就不能改变,要改变,必须销毁原来的字符串,再用新值得字符串填充该变量。

转为字符串的方法。

toString()方法。

每个字符串都有toString()方法,除了null、undefined值没有这个方法,其他的值都有。

对于Number类型调用时,可以传入输出数值的基数。即返回指定有效进制的字符串值,eg:  10..toString(8) 返回8,10.toString()返回10,默认基数为10。这样就为表示各种进制数时提供了方便!但只有十进制Number能调用toString()方法,其他进制的Number类型一律当成十进制!即,把数值输出成个种进制的表示方式!注意Number..toString()与Number.toString()的区别

传入数值的基数后,返回的是指定的进制表示的数值,但为了完整表示该进制,必须给八进制和十六进制分别添加0和0x作为开头

String()方法。

任何类型的值都能转为字符串,但null、undefined同样没有

转换规则:先调用toString()方法,若则调用String()方法

String()方法不能传参

语句

注意:不存在其他语言一样的块级作用域,所有流程控制语句中定义的变量都可以被流程控制外访问到。

if语句:条件可以是表达式,表达式求值的结果可以不为布尔值,那就会自动调用Boolean()来转换求值的结果而得到布尔值

for-in语句:是一种精准的迭代语句,可以枚举对象的属性。

eg:  var obj = { a: 1, b: 2}; for(key in obj){ console.log( obj[key] ) }  // 1  /n  2 

注意,key是字符串类型,故不能用点的方式来访问,必须用对象的方式来访问

switch语句:

switch()中的参数可以是任何数据类型,数值、字符串、对象都可以。

case中的值不一定是常量,可以是变量或者表达式

switch中执行的全等操作符,不会发生类型的转换

 

觉得可用,就经常来吧! 脚本宝典 欢迎评论哦! js脚本,巧夺天工,精雕玉琢。小宝典献丑了!

脚本宝典总结

以上是脚本宝典为你收集整理的javascript代码实例教程-javascript 基础一全部内容,希望文章能够帮你解决javascript代码实例教程-javascript 基础一所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。