JavaScript基础系列(变量与类型)

以下内容将JavaScript简称为JS

变量指的是,可被修改的数据。

变量这一词在所有的程序语言中都是最为关键、最常见的存在,在JS中也不例外,所以要透彻的了解变量就尤其的重要,必须重视,要想深入变量必须先了解数据类型是什么它在我们实际编码中所起到的作用是什么,接下来一一讲解。

(这段话给零基础学习的读者)很多初学者会有疑问,变量到底是干嘛的,可以做些什么啊?举一个最简单的例子:你想通过编写代码实现加减乘除的功能,那么首要的前提就是,你必须要有两个数字,但计算机不认识数字,那么就需要通过计算机能看懂的代码去把这两个数字存起来,也就是我们口中所说的定义变量,这里说的还是挺外围的,要用专业术语说就是通过解释器将预定好的代码翻译成二进制代码,接下去就是很底层的问题我们不需要考虑,只需要知道:“程序由代码生成,代码由人去预先设计之后在由计算机识别运行,我们所做的就是让计算机读懂人的思维”。

那么JS中如何定义变量:

在JS中通过var来定义一个变量

var a = 1;
var b = 2;
a+b // 3
a*b //2

var表示定义, a则表示变量名称, 数字1就是我们所说的变量,变量可以存放以下所说的七种类型包括函数,这么一来我们就可以把变量看做是一个空的盒子只要是符合规定的代码都可以往里存放,在关键的地方去使用它。

  • 变量的构成:定义、名称、变量。
  • 定义:告诉计算机我这里有变量并且帮我在内存中开辟一块空间存储这些(数据)
  • 名称:必须给这个变量起一个代号,以方便后面的调用。
  • 变量:放入我们需要用到的数据,这些数据就可看成是一副拼图中的一小块。

变量是你与计算机沟通的第一句话,也是日后使用最多的,所以必须要记住它的写法细节,新手常常会忘记加分号(;)或者关键词写错 这些都是程序报错的必查因素,需要重视在以后的开发过程中能避免很多弯路,这里也说几点我常常碰到容易疏忽的细节。

  1. 关键词与变量名的书写错误!
  2. 变量名在之后给某个功能块调用时,常常会因为一个字母没写对,可能就会花上十几二十分钟在找为什么出错我都是跟着视频或者文档书写的怎么就是报错呢?(新手特别容易出现这样的错误!所以在每次报错时先快速浏览一遍变量名与下面的调用是否真的一致)
  3. 关键词都是固定那么几个在实践中用心去记一记。
  4. 在我们日常写代码过程中,使用最多的就是前人留下来的代码库,而并非都需要自己去写,这就是各种库、框架的实质作用,它包含着这么多年来历经各式各样工程师验证的功能库,我们必须在学完基础重点去了解这些库的深层作用,以便应对工作的各种需求,各种编程语言都有它自己的功能库,当都有那么几个相同的库,如Array数组库、String文字处理库、Math数字处理库、Date时间获取库,这些库几乎所有编程语言都是互通的,八字不离其首的关系,所以我们在学完基础后必须快速的对这些基本库进行了解,下次讲库时在做深入分析。

这里说一下题外话在java中(不是JavaScript哦),如果你要定义数字变量需要使用int来定义,文字则需要String定义,如 int a = 1; string b = ‘文字‘;

而在JavaScript中则省去了这些,一个var就搞定,它的类型则是你所写的内容决定,如var a = ‘文字‘; var b = 66,这里的a会被自动识别为文字类型,b会被自动识别为数字类型,其他类型同样都是会被自动识别的。

扯完这些,现在就来看看变量类型,也是学习任何一门编程语言都必须要面对的重点知识,这里只对JS中的数据类型进行分析。

七大类型:

阅读提示:可以粗略带过但希望认真阅读布尔值的讲解,(以下类型代码中我们不会直接接触到的,除了函数类型会使用:function来定义)

基本类型:

number: 数字; var a  = 12;

string: 文字; var a  = ‘文字‘;

boolean: true,fales;  布尔值:真.假 ;

复合型(集合型):

Array:数组;var a  = [1,2,3,4,‘文字‘,‘abc‘];它是一串数据的集合。

function: 函数; function a(){};它是通过代码实现的功能块。

object: 对象;先留印象之后讲到对象篇时在深入

特殊类型:

Null:空对象; 一般出现在调用对象时,这个对象并没有被定义

undefined: 未定义;一般出现在程序报错的情况下

要这些类型有什么用呢?

数字、文字,不用多说,通过这两类型完成数据的呈现,使用数字类型完成各式各样的算法。

 

function 函数也称方法:

  就是一个逻辑功能的集合,在上一章也说到过,函数是可以放置所有代码,而后在这些代码的辅助下形成一个有处理事务能力的功能块,在编程中使用最多的除了变量就必属函数,之后另开一篇深入讲解,让我们先把必要基础先打牢靠。

Array 数组:

  同样是各种编程语言共有的数据类型,它的功能就是将一系列需要处理的数据进行合并式的存储,特别需要注意的是想在数组中拿数据必须通过循环进行获取需要使用(length)这个属性(至于什么是循环什么是length你现在只需要留一个印象就好,暂时不要去钻牛角尖,后面都会有详细讲解,与数组有着类似功能的还有JS中的JSON对象,它的存储方式是通过键值对的形式进行存储。

什么是键值对?来看下面对比

  • JSON存数据, var a = {a:12,b:‘你好‘,c:22}; 以键值对的方式进行存储,跟java中的map是一样的,这里的 a 就是 键,12 则是 值,
  • Array数组存数据, var a = [1,2,‘你好‘,123];

 千万不要忽视 方括号[]与花括号{}。

现在我们只是做一个了解看的不是很明白也没关系,在之后章节实践中使用到时在去做重点认知,把接下来的布尔值学好看明白才是学习本章的重点。

object 对象:

  在JavaScript中所有对象属于核心概念:它是JS中的老大哥,可它并非指具体谁谁谁是对象,而是一种范指,只有在使用一个对象时你可以把它具体化(实例化)通过new关键字来实现,之后在通过点(.)进行调用更加具体的功能块及属性。

在JS中任何数据都可以看做是对象,这也是我为什么说它是泛指的原因。

那么对象它到底能为我们做些什么呢?先说一下对象的写法与JSON相同,都是通过键值对的方式进行存放,在调用某个具体对象:属性时就是用键来调用其中的值,而且在对象中可以放置函数搭建我们自己的功能块,在这里我们先做一个简单的了解(只需要知道对象是功能块的集合,只有你想使用内置功能时去把它具体化出来在进行使用。)

Null与undefined:想详细了解可直接看这篇转载的文章。

boolean 布尔值类型:

  它的用途非常关键,所有的判断、循环语句都是靠着它才能正常执行,而一个程序如果没有判断就不可能是一个完整的程序,其实用白话讲:“程序想拥有处理事情的能力,必须要有分辨事物好坏的能力

那么怎么才能深入的了解这个布尔类型呢?我先推荐一位业界大神的文章 布尔代数——阮一峰;想学好前端跟着他才是正道。

我们从前面定义的两个变量入手

var a = 1;       //数字类型
var b = ‘文字‘;  //文字类型也叫字符串类型
a == b ; //true 真的 他们相等 将数字转换为字符串类型
a === b;//fales 假的 他们不相等 不做转换直接比较

上面的三等号(===)是运算符中的一种,叫做比较符,比较符还有(> 、< 、>= 、<= 、==、===、!=、!==;大于、小于、大于等于、小于等于、类型比较、!不等于);双等号(==)和现在看见的三等号(===),这些都不是本章重点讲运算符时重点分析。

现在我们要关注布尔值是在什么情况下会出现,这直接影响到我们将来写代码时逻辑的清晰度和可确定性,写判断语句时的底气,所以来看看布尔值的出现条件

  1. 在使用比较符时,布尔值必定会出现。
  2. 在JS中所有单独出现的值都可当做布尔值,但有以下规则。
    • undefined ,null ,0 ,-0 ,NaN ,“”   会被转换成false;(先了解一下以后碰到要使用时回来看看)
    • 所有其他值,包括所有独立对象、函数、数组、变量都会转换成true;(看清楚是独立的 并非两者有比较关系)

布尔值:它只有两个值,真和假,true和fales,判断语句if()只有在true(真)的情况下才会执行,而else则是在假的情况下执行,之后会讲解。

一个程序的判断能力,就是来自于布尔值的灵活应用,之后讲比较运算符,逻辑运算符在详细讲解它,这里先留下一个布尔值很重要的印象好吗?

小节:看完本章节你应当有以下收获

  1. 我们得知变量与类型是程序的入口。
  2. 写代码并不是所有功能都需要去自己实现,而是去灵活的使用前人给我们留下的功能集合(库),还有学不完的内置对象。
  3. 函数是可以放置任何代码的功能集,而想要让函数有功能必须先从定义变量开始之后在是一步步的代码逻辑。
  4. 程序的功能是由各式各样的判断产生(并非是绝对的)。
  5. 想要让程序有判断能力,必须使用到布尔值真与假(这是绝对的)。
  6. 了解布尔值的出现规则,这将会让自己避免特别多的弯路。
  7. 七大数据类型,我们现在只需要关注:数字、文字、布尔值、数组、函数、(而对象,在基础内容中出现较少,之后讲对象在做讲解,现在姑且把对象当中比函数更高一级的功能块就可以。)
  8. 让计算机读懂我们的代码必须使用这门语言预先设定好的关键字就行描述如:定义变量 var 、定义函数 function、 定义判断语句 if(),还有很多以后会一一提到。
  9. 还有很多读者可以自行总结。

希望你能有所收获也希望,能得到你的点评谢谢阅读!

时间: 2024-10-27 07:56:27

JavaScript基础系列(变量与类型)的相关文章

JavaScript基础系列目录(2014.06.01~2014.06.08)

下列文章,转载请亲注明链接出处,谢谢! 链接地址: http://www.cnblogs.com/ttcc/tag/JavaScript%20%E5%9F%BA%E7%A1%80%E7%9F%A5%E8%AF%86%20%E6%80%BB%E7%BB%93/ 1. Javascript基础---语法(待完成) 2. JavaScript基础---数据类型(待完成) 3. JavaScript基础---Array数组(待完成) 4. JavaScript基础---正则表达式(待完成) 5. Jav

javascript基础语法——变量和标识符

显示目录 目录 [1]定义 [2]命名规则 [3]声明[4]特性[5]作用域[6]声明提升[7]属性变量 前面的话 关于javascript,第一个比较重要的概念是变量,变量的工作机制是javascript的基本特性.实际上,变量是标识符的一种.本文将详细介绍变量和标识符 定义 标识符(Identifier)就是一个名字,用来对变量.函数.属性.参数进行命名,或者用做某些循环语句中的跳转位置的标记 //变量 var Identifier = 123; //属性 (new Object).Iden

Javascript基础系列之(一)JavaScript语法

javascript的语法 1.区分大小写 javascript中,变量.函数.运算符都区分大小写. 2.弱类型变量 定义变量只用 "var"关键字 var age = 25; var myscholl = "sanxiao"; var mal = true; 3.每行结尾的分号可有可无. 4.括号用于代码块. 代码示例 1 <!DOCTYPE html> 2 <html> 3 <head lang="en">

Javascript基础系列之(二)变量

javascript 中变量通过var关键字(variable)来声明的. var school = "beijingyizhong" 也可以通过var 关键字给变量多个值. var school = "beijingyizhong" , diqu = "beijing" , age = 100; 此外,与java不同,javascript可以在同一个变量中存储不同的数据类型.例如 var school = "beijing"

Javascript基础系列之(三)数据类型 (类型转化)

所有语言都有类型转化的能力,javascript也不例外,它也为开发者提供了大量的类型转化访法,通过全局函数,可以实现更为复杂的数据类型. var a = 3; var b = a + 3; var c = "student" + a; var d = a.toString(); var e = a + ""; document.write(typeof(a) + " " + typeof (b) + " " +typeof

javascript基础系列总结

js是一个脚本客户端(浏览器)语言.和sql html类似.多练习. 没有排错的经验,弱类型语言,浏览器解释执行,出错也不会报错 变量 给变量赋值 循环 打印 监听动作 在head中,也可以在body中.都需要<script>标签内 alert(""); html从上到下依次执行,如果js放中间,会先中间执行. 比如:给一个控件注册事件,无法执行,可能就应为body还没执行完 大小写敏感,弱类型. var  可能是数组 对象 没有var 的变量是全局变量,任何地方都能用.

javascript基础编程の变量、对象、数据类型及函数

在web标准中.网页由结构.表现形式和行为三个部分组成. 结构标准---->XHTML: 表现形式标准----->CSS: 行为标准----->javascript: javascript是一种专门设计用来给网页添加交互性的编程语言,最初由Netscape公司开发.最后提交给了欧洲计算机制造商协会(ECMA).    一.javascript特点: 1.javascript是一门解释型语言,这意味着javascript代码不须要预先编译就能够运行. 2.javascript不能脱离浏览器

JavaScript基础 空字符串:string 类型,转成bool类型是 :false Boolean()系统函数

镇场诗: 清心感悟智慧语,不着世间名与利.学水处下纳百川,舍尽贡高我慢意. 学有小成返哺根,愿铸一良心博客.诚心于此写经验,愿见文者得启发.------------------------------------------ code: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=ut

JavaScript基础 undefined转为bool类型为false Boolean()系统函数

镇场诗: 清心感悟智慧语,不着世间名与利.学水处下纳百川,舍尽贡高我慢意. 学有小成返哺根,愿铸一良心博客.诚心于此写经验,愿见文者得启发.------------------------------------------ code: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=ut