javascript中的面向对象_JavaScript语法和数据类型

JS的基本语法、变量声明、数据类型和字面量

javascript是区分大小写的,所以变量abc和ABC是不同的变量。

在js中指令被称为语句statement,并用分号进行分割(;)。

javascript有三种声明方式。

1,var 声明一个变量(用var声明的是全局变量),可初始化一个值。
2,let 声明一个块作用域的局部变量,可初始化一个值。
3,const 声明一个不能被修改的常量(尝试更改const声明的变量将报错)。

(变量又叫做标识符)

用var 和 let声明的变量,如果没有赋初始值,则值为undefined

var 

变量的作用域:

1, 在函数之外声明的变量,叫全局变量。它可被当前文档中任何其他地方的代码所访问。
2, 在函数内部声明的变量,叫局部变量。它只能在当前函数内部访问。

变量的提升:

JavaScript的另一个不同寻常的地方就是变量的提升,就是说在程序中可以先使用变量稍后再声明变量而不会抛出异常。JS的变量提升是被“提升”到了函数或者语句的最前面,相当于再代码最开头就声明过一样,但是其初始值是undefined,这点需要注意到。
由于存在变量提升这个特性,一个函数中使用var声明的变量尽可能地将其放在函数地最顶部,提升代码地清晰度。
在ES6中,let声明地变量不存在变量提升。

函数提升:

在JS中函数有两种创建方式: 函数声明和函数表达式。而函数的提升只是在函数声明这种创建方式下才有效。函数表达式不生效。

/* 函数声明 */

全局变量:

实际上,在函数体外我们用var声明的变量都是全局变量全局变量是全局对象window的属性。可以自行打印下window下的所有属性。

数据类型:

6种基本数据类型Boolean 布尔值 Null 空值 Undefined 未定义(变量未定义时的属性)、 Number 数字(包括整数和浮点数)、String 字符串Symbol 符号(一种实例是唯一且不可改变的数据类型 ES6)

1种引用数据类型Object 对象

对象(Objects)和函数(functions)是这门语言的另外的两个基本元素,我们可以把对象当成一个可以命名容器。首先对象是一个承载数据的容器,其次它还有属于自己的名字(变量名)。我们可以将函数当作一段程序执行的步骤(一段代码在函数中自上向下执行,这也是关乎到了JS的执行机制)。

JavaScript是一种动态类型语言,这也就表示着声明变量时可以声明任意数据类型,并且后续可以通过代码直接更改变量的数据类型。

var answer = 42;
// 直接修改变量answer的数据类型为 字符串
answer = "hello world";

在JavaScript中,大多数事物都是对象,从作为核心功能的字符串和数组,到建立在JavaScript之上的浏览器API。你甚至可以自己创建对象,将相关的函数和变量高效的封装打包成便捷的数据容器。

对象是一个包含相关数据和方法的集合(键值对,属性名和属性值,属性值可以是任意数据类型,也可以是另外一个对象,还可以是一个函数对象)。

var 

从零开始面向对象的程序设计:

对象可以包含相关的数据和代码,这些数据和代码用于表示你所建造的模型是什么样子,以及拥有什么样的功能和行为。
对象包(或者叫命名空间namespace)存储(官方用语:封装)着对象的数据(常常还包括函数),使数据组织和访问变得更容易了;
对象也常用作数据存储体(data stores),用于在网络上运输数据,十分便捷。


定义一个对象模板:

在一些面向对象的语言中,我们用类(class)的概念去描述一个对象(而JavaScript使用了一个完全不同的术语),类并不完全是一个对象,它更像是一个定义对象特质的模板

bf0e06e2486544f5a8140734fb189e15.png

9cb8cdfd403522bb3e7784c0c27b1413.png

34805b8cccc5b8a804c7e90b3f736cb9.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值