澳门正规赌博十大网站-澳门游戏网站
做最好的网站

jQuery全面复习总结,JavaScript数据类型

-->目录导航

本章主干知识点:

 

一、 JavaScript

1、定义js的三种方式:写到html标签中;写到html的script标签中;写到单独的js文件中;

基本数据类型:

    1. js介绍

2、JavaScript中类型的转换

字符串:String

    2. js语法

3、function、匿名function

数字:Number

    3. js进阶

4、js中字符串常见用法;

布尔值:Boolean   true/fasle

    4. js高级

5、js中的万能集合Array:是数组“['aa','bbb']”、又是字典{name:'rupeng',age":8}

特殊数据类型:

    5. 事例代码下载


空对象:Null

一、 JavaScript

什么是JavaScript(简称js)?

未定义:Undefined

做BS系统,JavaScript的使用是少不了的;本文就带你快速回顾一下JavaScript的基本知识,看看哪些基础知识是你所遗漏的

 JavaScript是一种jQuery全面复习总结,JavaScript数据类型。脚本语言。

复合数据类型:

  1. js介绍

 常见的脚本:cmd,t-sql,vbscript等等都属于脚本语言

对象:Object

① js是一种基于对象和事件的脚本语言,使用浏览器来执行。

 Javascript的作用

数组: Array

② js是解释型语言,无需编译就可随时运行。

jQuery全面复习总结,JavaScript数据类型。HTML只是描述网页长相的标记语言,没有计算、判断能力,如果所有计算、判断(比如判断文本框是否为空、判断两次密码是否输入一致)都放到服务器端执行的话网页的话页面会非常慢、用起来也很难用,对服务器的压力也很大,因此要求能在浏览器中执行一些简单的运算、判断。JavaScript就是一种在浏览器端执行的脚本语言。

 

③ 安全性:不允许访问本地硬盘;跨平台:有支持js的浏览器即可。

可以直接嵌入HTML页面,但写成单独的js文件有利于结构和行为的分离。

一、      String字符串类型  

④ 在网页中编写js代码推荐使用外部引用的方式,这样可以多个页面共享js代码,达到代码复用。

跨平台特性,在绝大多数浏览器的支持下,可以在多种平台下运行(如Windows、Linux、Mac、Android、iOS等)。

String类型用于表示由零或多个16位Unicode字符组成的字符序列,即字符串。字符串可以由单引号(')或双引号(")表示。

回到导航

jQuery全面复习总结,JavaScript数据类型。 --------------------------------------------------------------------------------------

如:         var name = 'yan';

            var keMu = 'HTML5';

            console.log(name);   // yan   ,在控制台输出变量的值

            console.log(keMu);   // HTML5

 

任何字符串的长度都可以通过访问其length属性取得

      alert(str1.length);        //输出5

 

要把一个值转换为一个字符串有两种方式。第一种是使用几乎每个值都有的toString()方法。

var age = 11;

    var ageAsString = age.toString();    //字符串"11"

    var found = true;

var foundAsString = found.toString();    //字符串"true"

数值、布尔值、对象和字符串值都有toString()方法。但null和undefined值没有这个方法。

 

二、Number  数字类型

数值类型包括了整数和浮点数,整数可以是十进制、十六进制和八进制数,十进制数由一串数字序列组成,它的第一个数字不能为0。如果第一个数字为0,则表示它是一个八进制数。如果0x,则表示它为一个十六进制数。 

浮点数必须包含一个数字、一个小数点或“e”(或“E”)。浮点数例子如下:3.1415、 -3.1E12、0.1e12和2E-12。
  1. js语法

JS的开发环境及动态语言

这种类型用来表示整数和浮点数值,还有一种特殊的数值,即NaN(非数值 Not a Number)。这个数值用于表示一个本来要返回数值的操作数未返回数值的情况(这样就不会抛出错误了)。例如,在其他编程语言中,任何数值除以0都会导致错误,从而停止代码执行。但在JavaScript中,任何数值除以0会返回NaN,因此不会影响其他代码的执行。

jQuery全面复习总结,JavaScript数据类型。(1) 大小写敏感,严格区分大小写。

WebStorm,:  Ctrl / 注释快捷键

NaN本身有两个非同寻常的特点。首先,任何涉及NaN的操作(例如NaN/10)都会返回NaN,这个特点在多步计算中有可能导致问题。其次,NaN与任何值都不相等,包括NaN本身。

(2) 定义字符串,可以使用“双引号”,也可使用“单引号”,推荐使用单引号与html避免冲突。

Editplus,

例如,下面的代码会返回false。

(3) js是“弱类型”语言,支持“动态类型”,没有显示数据类型,声明变量都用var

Nodpad ,

             alert(NaN == NaN);    //false

(4) 网页中的js代码应该放到<script></script>标签中,<script>标签可以放到<head>、<body>等任意位置,并且一个页面可以有不止一对<script></script>标签。

Dreamweaver MyEclipse,

JavaScript中有一个isNaN()函数,这个函数接受一个参数,该参数可以使任何类型,而函数会帮我们确定这个参数是否“不是数值”。isNaN()在接收一个值之后,会尝试将这个值转换为数值。某些不是数值的值会直接转换为数值,例如字符串”10“或Boolean值。而任何不能被转换为数值的值都会导致这个函数返回true。例如:

(5) 每条语句后用“;”来结尾,可以方便做js压缩并且提高代码可读性

Visual Studio201*;

     alert(isNaN(NaN));    //true

(6) 变量命名规则:以字母、下划线或$开头,中间可以包括字母、数字、下划线或$

JS是非常灵活的动态语言,开发工具中的JS完成功能只是一个辅助、建议。

    alert(isNaN(10));    //false(10是一个数值)

(7) 关键字、保留字

“.”出来的成员调用可能不能用,

    alert(isNaN("10"));    //false(可能被转换为数值10)

关键字:break、else、new、var、case、finally、return、void、catch、for、switch、while、continue、function、this、with、default、if、throw、delete、in、try、do、instanceof、typeof

保留字:abstract、enum、int short、boolean、export、interface、static、byte、extends、long、super、char、final、native、synchronized、class、float、package、throws、const、goto、private、transient、debugger、implements、protected、volatile、double、import、public

“.”不出来的成员也许也能调用,因此不要因为“点儿不出来”而担心代码有问题。

    alert(isNaN("blue"));    //true(不能被转换为数值)

(8) 注释

编写js时,自己应该清楚当前对象有些什么成员,不能依赖智能提示。

    alert(isNaN(true));    //false(可能被转换为数值1)

单行注释: jQuery全面复习总结,JavaScript数据类型。// ;块级注释:/* */;推荐使用单行注释

动态语言:在运行时确定数据类型。

 

(9) 数据类型

JavaScript基本组成

  有3个函数可以把非数值转换为数值:Number()、parseInt()和parseFloat()。第一个函数,即转型函数Number()可以用于任何数据类型,而另外两个函数则专门用于把字符串转换成数值。这3个函数对于同样的输入会返回不同的结果。

js中有5种简单数据类型(也称为基本数据类型):Undefined(未定义) 取值-undefined、Null(空对象) 取值-null、Boolean(布尔) 取值-true或false、Number(数字) 取值-所有数字,包含整数和小数,范围相当于double、String(字符串) 取值-。还有1种复杂数据类型——Object(对象类型) 取值-任何对象,本质上是由一组无序的名值对组成的。

Dom(文档对象模型)由著名的w3c制定

  Number()函数的转换规则如下:

typeof运算符用来检测变量的数据类型

 (封装好的一些函数库在html于xml中都是用dom)

  ● 如果是Boolean值,true和false将分别被替换为1和0

"undefined"——如果这个值未定义;

"boolean"  ——如果这个值是布尔值;

"string"   ——如果这个值是字符串;

"number"   ——如果这个值是数值;

"object"   ——如果这个值是对象或null;

"function" ——如果这个值是函数;

DOM:Document Object Model

  ● 如果是数字值,只是简单的传入和返回

(10) 其它语句如if、while、for等等与C#几乎一致


  ● 如果是null值,返回0

(11) 转义字符“”也与C#一样

JavaScript语法及注意事项

  ● 如果是undefined,返回NaN

回到导航

大小写敏感 :JavaScript严格区分大小写。(n与N是两个不同的变量。)

  ● 如果是字符串,遵循下列规则:

  1. js进阶

弱类型语言,声明变量用var:var num=10;num=true;可以

   ○ 如果字符串中只包含数字,则将其转换为十进制数值,即”1“会变成1,”123“会变成123,而”011“会变成11(前导的0被忽略)

(1) ==与===

字符串可以用单引号:var msg=‘坚持不泄’

   ○ 如果字符串中包含有效的浮点格式,如”1.1“,则将其转换为对应的浮点数(同样,也会忽略前导0)

==、!=:对于其两边的表达式,如果类型相同,则直接比较,如果不同,则尝试转换成为相同类型再判断;==认为null与undefined、undefined与undefined是相等的

每句话后面分号:

   ○ 如果字符串中包含有效的十六进制格式,例如”0xf“,则将其转换为相同大小的十进制整数值

===、!==:判断前不进行类型转换,===两边必须类型相同、值也相同时才会返回true

虽然如果语句结束后可以不加分号,建议有个好的代码风格,手动加“分号”的好处:1>可以放心的做js压缩(压缩多余空白)2>提高代码可读性.

   ○ 如果字符串是空的,则将其转换为0

(2) null与undefined

Js的注释,与C#、Java的相同(//单行注释(推荐)、/*  多行注释 */

○ 如果字符串中包含除了上述格式之外的字符,则将其转换为NaN

null:表示一个有意义的值,表示“无值”或“无对象”,变量的状态为已知状态;通过设置对象为null,来释放对对象的引用,以便浏览器回收内存。

很多语法与Java语言或C#语言类似。有Java语言或C#语言编程基础的同学学习JavaScript语法会很容易上手。

  ● 如果是对象,则调用对象的valueOf()方法,然后依照前面的规则转换返回的值。如果转换的结果是NaN,则调用对象的toString()方法,然后再依次按照前面的规则转换返回的字符串值。

undefined


    var num1 = Number("Hello World");    //NaN

① 声明变量但未赋值时,变量的值为undefined

JavaScript初级

    var num2 = Number("");                //0

② 方法没有return语句返回值时,返回undefined

编写第一个JavaScript程序:我的年龄是18岁

    var num3 = Number("000011");        //11

③ 未声明的变量,通过typeof()检测变量时,返回"undefined"字符串。

编写第二个JavaScript程序:显示当前时间

    var num4 = Number(true);            //1

④ 访问不存在的属性时返回undefined

<script language=“...” >现在我们已经不推荐这种写法了。

  由于Number()函数在转换字符串时比较复杂而且不够合理,因此在处理整数的时候更常用的是parseInt()函数。parseInt()函数在转换字符串时,更多的是看其是否符合数值模式。它会忽略字符串前面的空格,直至找到第一个非空格字符。如果第一个字符串不是数字字符或者负号,parseInt()会返回NaN;也就是说,用parseInt()转换空字符串会返回NaN。如果第一个字符是数字字符,praseInt()会继续解析第二个字符,知道解析完所有后续字符或者遇到了一个非数字字符。例如,"1234blue"会被转换为1234,”22.5“会被转换为22,因为小数点并不是有效的数字字符。

注:把null转换为数字,结果为0。而把undefined转换为数字结果为NaN。

网页中的JavaScript代码应该放到<script></script>标签中,<script>标签可以放到<head>、<body>等任意位置,并且一个页面可以有不止一对<script></script>标签。放到<head>中的<script>在body加载之前就已经运行了。写在body中的<script>是随着页面的加载而一个个执行的。

  如果字符串中的第一个字符是数字字符,parseInt()也能够识别出各种整数格式(即十进制、八进制、十六进制)。为了更好的理解parseInt()函数的转换规则,下面给出一些例子

(3) 判断变量是否可用

alert()函数是弹出一个消息窗口。new Date()创建一个Date对象,默认时间是当前时间。

 

变量不可用:变量声明未赋值、变量未声明就使用、变量值为null

Javascript如果遇到错误,有错误的<script></script>中的代码不会执行,但是不会影响后面的而其他<script></script>代码和html的显示。(演示)

    var num1 = parseInt("1234blue");    //1234

判断:


    var num2 = parseInt("");            //NaN

if(typeof(v) !='undefined' && v != null)

JavaScript导入和错误

    var num3 = parseInt("0xA");            //10(十六进制)

推荐写法:if(v)   --这里会把v先转换为boolean类型再判断 ;对于null、undefined、0、空字符串就会转换为false

外部导入:

    var num4 = parseInt("22.5");        //22

(4) 变量作用域

导入外部JavaScript文件:除了可以在页面中声明JavaScript以外,还可以将JavaScript写到单独的js文件中,然后在页面中引入:<script src=“test.js”type=“text/javascript”></script>。

    var num5 = parseInt("070");            //56(八进制)

① 全局变量:在页面上直接声明的变量,“全局”是指在整个当前页面都能访问到的变量;

 声明到单独的js文件的好处是多页面也可以共享、减小网络流量。

    var num6 = parseInt("70");            //70

默认属于Windows成员

直到页面关闭或浏览器关闭才释放资源

在每个<script></script>中都可以访问到

容易引起“命名冲突”

 可以将导入外部文件的<script>标签写在文档最后,提高用户体验。

 

② 函数内部变量:作用范围为当前函数内部

 

    var num7 = parseInt("10",2);        //2(按二进制解析)

③ 没有块级作用域范围,所以在方法中任何地方声明的变量都是在整个方法中有效。

注意:

    var num8 = parseInt("10",8);        //8(按八进制解析)

④ 声明变量可以用“var”,也可不用,不用“var”声明的变量是全局变量;

在<script></script>标签中不要出现’</script>’元素。

    var num9 = parseInt("10",10);        //10(按十进制解析)

⑤ js中同样不能有重名的变量,js发现变量重复后悔自动忽略后面的声明,只是用第一次声明的变量

错误:

    var num10 = parseInt("10",16);        //16(按十六进制解析)

注:推荐在js声明变量时要用var,且少使用全局变量

<script src=“test.js” type=“text/javascript”/>否则会有问题,这是一个比较特殊的地方。(×)

    var num11 = parseInt("AF");            //56(八进制)

(5) 数据类型转换


    var num12 = parseInt("AF",16);        //175

① 字符串转化数字 

JavaScript的事件

 

字符串转换为整数:parseInt(numString, [radix]) radix 为要解析的字符串的基数。该值介于 2 ~ 36 之间。如果省略该参数或其值为 0,则数字将以 10 为基础来解析。如果它以 “0x” 或 “0X” 开头,将以 16 为基数。如果该参数小于 2 或者大于 36,则 parseInt() 将返回 NaN。

JavaScript中也有“事件”的概念。

  与parseInt()函数类似,parseFloat()也是从第一个字符(位置0)开始解析每个字符。而且也是一直解析到字符串末尾,或者解析到遇见一个无效的浮点数字字符为止。也就是说,字符串中的第一个小数点是有效的,而第二个小数点就是无效的了,因此它后面的字符串将被忽略。例如,”22.34.5“将会被转换成22.34。

字符串转化为小数:parseFloat(numString)

案例1:

  parseFloat()和parseInt()的第二个区别在于它始终都会忽略前导的零。由于parseFloat()值解析十进制值,因此它没有用第二个参数指定基数的用法。

② 任意类型到指定类型

单击一个按钮显示当前时间。就触发了一个事件

 

转为字符串:String(object)、对象.toString()

 <input type=“button” onclick=“ js代码" />

    var num1 = parseFloat("1234blue");    //1234

转为Boolean:Boolean(object)

 案例2:

    var num2 = parseFloat("0xA");        //0

转化为数字:Number(object)

单击一个超链接显示当前时间。

    var num3 = parseFloat("22.5");        //22.5

NaN:当某类型转化为数字失败时,返回NaN,表示不是一个数字;NaN不等于任何值,包括它自己,判断时需要使用isNaN(arg)函数

 <a href=“javascript:js代码”>热点文字</a>

    var num4 = parseFloat("22.34.5");    //22.34

(6) eval() 函数

 超链接为“死链”时,使用#与javascript:void(0);的区别。void(0)没有用的值,不会去任何地方,就没有意义了

    var num5 = parseFloat("0908.5");    //908.5

eval() 函数可将字符串转换为代码执行,并返回一个或多个值.

如果eval函数在执行时遇到错误,则抛出异常给调用者.

类似的函数是loadcode ,loadcode并不立即执行代码,而是返回一个函数对象.

并且loadcode支持路径参数,eval并不支持. eval并不支持代码中的return语句,而是将代码作为表达式直接计算出结果.


 

注:不推荐使用,效率低且不安全

JavaScript变量 声明

 

(7) String对象

变量命名规则:以字母、下划线或$开头,中间可以包括字母、数字、下划线或$。(变量命名中多了一个$),一般不要用$开头。

三、Boolean 布尔值

length属性:获取字符串的字符个数。(无论中文字符还是英文字符都算1个字符。)

 JavaScript中即可以使用双引号声明字符串,也可以使用单引号声明字符串。主要是为了方便和html集成,避免转义符的麻烦。

布尔值 true 代表“真”,false 代表“假”。一般关系运算符会返回布尔值的结果。另外,数值的 0、-0、特殊值的 null、NaN、undefined 以及空字符("")都会被解释为 false ,其他值则会被解释为 true 。

charAt(index)方法:获取指定索引位置的字符。(索引从0开始)

 JavaScript是动态类型,因此

下面的代码定义了一个名为 myBoolean 的布尔对象:

indexOf(‘字符串’,startIndex)方法:获取指定字符串第一次出现的位置。startIndex表示从第几个开始搜索。

 var i=10;i=‘test’是合法的。

var myBoolean=new Boolean();

split(‘分隔符’,limit);//根据分隔符将一个字符串返回为一个数组。limit表示要返回的数组的最大长度(可自定义)。多个

 var m,n,x,y=10;是否合法

如果布尔对象无初始值或者其值为:  

本文由澳门正规赌博十大网站发布于澳门游戏网站,转载请注明出处:jQuery全面复习总结,JavaScript数据类型