JavaScript(一)

 

1 什么是javascript?

1.1概念

JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。

JavaScript简称JS

1.2 javascript能干啥?

[1]动态的向HTML网页中插入内容

[2]动态的修改页面的元素的属性

[3]修改页面元素的内部内容

[4]修改页面元素的样式

[5]响应页面元素的事件

1.3js如何编写

[1]内置JS

JS是嵌套到HTML页面中的脚本语言,在HTML网页中编写在<script>标签中,script标签可以编写在网页的任何位置(一般情况下,我们也是编写在head中的。)。

JS没有类的概念,整个网页中的所有的script标签内部的代码都是在同一个作用域中的。

[2]外置JS

和外置的CSS一样,外置的JS可以被多个网页使用。

新建一个JS文件后缀为”.js”,再通过script标签引入到网页中。

2 数据类型

Javascript之所以叫javascript就是因为看上去很像java。但是js不是面向对象的,他是基于对象的弱数据类型语言。

2.1变量

         存储数据的最小单元。

         定义变量的语法:  var 变量名;  可以同时使用 “=”直接赋值。也可以在之后再赋值。在申明变量时不需要申明变量的数据类型。甚至可以不写var。例如:

 

[2]数据类型

         Js是弱数据类型,的动态的数据类型。

         所谓弱数据类型,就是在申明变量时不确定变量的数据类型。赋值的时候才确定变量的数据类型。

         所谓动态类型是说,同一个变量可以是不同的类型的值。

2.2数据类型

[1]数值型

         数值型指的就是数组,分为整型和浮点型。

         整型就是int,浮点型就是float。

         其实赋值为整数就是整型,赋值为小数就是float型。

将float转换为int

[2]字符串

         在JS中不区分字符和字符串,不区分单引号和双引号。

         所以给变量赋值时, 如实使用了双引号或者单引号,则都是字符串类型。

[3]布尔型

         在JS中所有的存在的数据都是true,不存在的都是false。

         0是false,非0就是true。

        

         空字符串=false,非空字符串就是true。

Null就是false,undefined都是false。其他对象都是true。

[4]特殊的类型

没有定义的变量:

         没有初始值的变量就是undefined。

         Null类型

NaN类型,不是数字的类型

2.3数据类型之间的转换

         几乎所有的类型都会自动转换(在特殊的运算情况下)。

[1]其他类型转换为字符串

Tips:简单类型的转换,其实都是其字面的值。 对象或者dom对象,都会转换为其toString。

[2]String转换为其他类型

         转换为数字:

         Tips: “+” 和java是一样的可以做加法运算,也可以做字符串连接。

         自动转换: 运算中不会产生歧义的情况下回自动转换。

如果转换失败:产生NaN

Tips:在算术运算中,如果使用任何数字和NaN做运算都会产生NaN结果。

         运算过程中如果产生歧义需要强制类型转换:

         结果是将20转换为字符串和a连接,强制转换结果:

         强制类型转换为float的语法是:parseFloat(a);

         强制类型转换的特殊情况:

         如果是parseInt做强制类型转,在转换过程中会将可以转换的前面的数字部分转换为数字,其余部分丢弃掉。如果是字母开头的字符串,会转换为NaN。

        

String转换为布尔类型:

         空字符串转化为false,非空字符串转换为true。

3.运算符

         运算符和java中的运算符几乎没有任何区别。

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

         关系运算符: >、>=、<、<=、==、!=

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

         赋值运算符: =、+=…..

4 流程控制

4.1顺序

         程序由上至下,逐行执行。

4.2分支

         If系列

         If(){}

         If(){}else{}

         If(){}else if(){}…else{}

         由于js是弱数据类型型的。所有类型都可以自动转换为布尔类型。所有在java中if的条件中只能是布尔值,但是js中可以是任何类型的值。

         Switch

         Switch(表达式){

         Case  v1:

                   …

                   Break

                            …….

}

表达式可以是任何类型。

4.3循环

         Java中的循环        

While(){}   do{}while();   for(){}

         Js中是一样的。

5.函数

JS中的函数相当于java中的方法。

语法:

function  函数名(参数列表){

         语句;

         [return 返回值;]

}

 

函数名和java中方法名命名规则一致。

参数列表:由于是弱数据类型,申明参数时,不需要申明类型。直接写参数名称即可。

返回值:不需要申明返回值类型,有返回值就返回,没有返回值就返回。

 

函数的调用:函数调用只参考函数名,不关心函数的参数。

6.变量的作用域

最尝试的作用域。

 

在申明变量的上方使用变量, 显示undefind

 

 

不使用var申明的变量称之为隐式变量, 隐式变量默认是全局的。

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值