JavaScript基础介绍和数据转换规则

Javascript的组成:ECMAScript,DOM,BOM

ECMAScript:语法,规范,标准,定义了javascript的语法规范,描述了语言的基本语法和数据类型。 用来约束代码用什么样的格式书写,写什么,如何执行。

DOM(Document Object Model):文档对象模型,document,表示网页。

提供了网页的相关操作,标准化组织是W3C。

有一套成熟的可以操作页面元素的 API,通过 DOM 可以操作页面中的元素。

如:增加元素,删除元素,改变元素位置等

BOM(Browser Object Model):浏览器对象模型,window,表示浏览器。

提供了浏览器的相关操作,沿用了ECMAScript的标准,在此之上添加各个浏览器自身的特色功能

有一套成熟的可以操作浏览器的 API,通过 BOM 可以操作浏览器。

如:弹出框、浏览器跳转、获取分辨率等

Javascript书写位置规范:

1.行内:标签内,通过行为属性执行相关js代码

 <div οnclick=“alert(hello div”)’>可点击的元素</div>

必须通过行为触发,不推荐使用,结构和行为的耦合过高,不利用多个标签之间的行为复用

2.内部:html文件内,使用script标签标记js代码

自动执行,不太推荐使用,html和行为的耦合过高,可以做到多个标签之间的行为复用,但是不利于多个html文件之间的行为复用

3.外部:独立的js文件内,通过script标签的src属性引入,建议使用。

自动执行,推荐使用,完全做到html和行为的解耦,方便html文件之间的行为复用,方便独立管理。

变量的命名规则

必须使用字母 或 下划线 或 $开头,可以包含数字,严格区分大小写,不允许使用关键字或保留字,尽量语义化,词必达意

建议:使用组合单词表示复杂的含义

可以使用数据类型的首字母做前缀

建议:使用组合单词后,再使用驼峰式命名

大:从第一个单词的首字母开始大写

构造函数命名使用大驼峰

小:从第二个单词的首字母开始大写

一般变量使用小驼峰

小技巧:可以通过给单词加前缀,避免触发关键字和保留字

Javascript数据类型:

字符型:string: 所以使用引号(‘ ’)包裹的数据都是字符

数值型:number:0,1,2,3,4.....NaN

布尔型:boolean:true,false

Undefined: undefined: 没有值,变量声明了,但未赋值。在内存中有这个数据的位置

  Null:null,空,空值,还是空地址

对象型:object数据的打包,是一种复杂数据。无序集合是object对象,有序集合是array对象

Object对象的基本语法:一般由键值对组成,一个对象可以存在多个键值对,键和值一一对应,成对出现,标志为{}

Array对象的基本语法:一般由多个数组组成,标志为{}

函数型:function:一段代码的打包,是一种复杂数据。打包之后,需要被动执行

symbol:类似于字符型数据,基本数据类型。特点:任何两个symbol都不相等。作用:用来标记值,用于标记唯一的值或状态。

JavaScript 运算符

算术运算符: +,-,*,/,%,**

关系运算符;> ,>=,<,<=,==,!=,===,!==

逻辑运算符:||,&&,!

赋值运算符:=,可以操作任何数据,和算术运算符结合:+=,-=,*=,/=,%=

自增自减:自增++   自减--

前:先运算后使用    后:先使用后运算

数据类型的转换:将不符合要求的数据,转成符合要求的数据

方式:

隐式:不主动控制,在程序执行过程中,将当前数据作为其他数据使用

显式(强制):主动控制,使用一些确定的方法,强行将数据转成其他类型

注意:原数据不会受到数据类型转换的影响,转换得到的是一个新数据

隐式:

场景:

1.运算符:

 + 转字符     -,*,/,%,** 转数值      ++  - - :转数值

>,>=,<,<=,==,!=  转数值         ||,&&,!  转布尔

Alert,document.write   转字符         IsNaN的小括号  if的小括号  规则(同显示转换规则)

显式:

转换方法:

转字符:string() 转所有   xx.toString () 除了undefined和null 都可以转字符

转数值:parseInt()主要用于数值和字符转数值,取整   字符,非严格转换模式

              ParseFloat()主要用于数值和字符转数值,保留小数   字符,非严格转换模式

              Math.round()四舍五入取整,字符,严格转换,所有转数值

              Number()完整转换,字符,严格转换,所有转数值

转布尔:boolean(要转换的数据)

数据转换,只发生在运算过程中,或转换时,不会对原数据造成任何影响

规则:

其他转字符:直接套引号:number,boolean,function

报错:undefined,null

转成:[ onject,object] :object      将中括号替换成引号:array

其他转数值:

字符:非严格转换:从左向右检测,能转则转,不能转,停止; 如果第一位就不能转,直接NaN

           严格转换:任意位置不允许出现非数字,否则就是NaN;

           True为1  false为0   空数组和null为0

数组:有且只有一个能直接转成数值的数据,就是该数值,否则就是NaN

           数组的其他形式,花括号对象,函数,undefined,都是NaN

其他转布尔:字符转布尔:非空字符为true,空字符为false

                     数值转布尔:0和NaN为false 其他都是true

复杂数据,对象,数组,函数:都是true      Undefined和null都为false

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值