javascript基础知识(在javascript中 = 是赋值符号)

变量

合法的变量命名规则:大小写英文、数字、 $ 和 _ 的组合,且不能用数字开头。

var a;       //声明变量
var s = 2; //声明变量并赋值

javascript有 8种 数据类型:

  • Number        //数字
  • Boolean             //布尔
  • String                 //字符串
  • Array       //数组
  • Object                //函数
  • null                     //null
  • undefined           //undefined
  • symbol               //符号(es6新增)

Number

JavaScript 只有一种数字类型。数字可以带小数点,也可以不带

123;              // 整数123
0.456; // 浮点数0.456
1.2345e3; // 科学计数法表示1.2345x1000,等同于1234.5
-99; // 负数
NaN; // NaN表示Not a Number,当无法计算结果时用NaN表示
Infinity; // Infinity表示无限大,当数值超过了Number所能表示的最大值时,就表示为Infinity

Boolean

布尔(逻辑)只能有两个值:true 或 false

var x=true
var y=false

String

字符串是存储字符(比如 "Bill Gates")的变量。

字符串可以是引号中的任意文本。您可以使用单引号或双引号:

var answer="Nice to meet you!";
var answer="He is called 'Bill'";
var answer='He is called "Bill"';

Array

数组是一组按顺序排列的集合,集合的每个值称为元素。JavaScript的数组可以包括任意数据类型

例如:

[1, 2, 3.14, 'Hello', null, true];

上述数组包含6个元素。数组用 [] 表示,元素之间用  ,  分隔。

另一种创建数组的方法是通过Array()函数实现:

new Array(1, 2, 3); // 创建了数组[1, 2, 3]

然而,出于代码的可读性考虑,强烈建议直接使用 [] 。

数组的元素可以通过索引来访问。请注意,索引的起始值为0

var arr = [1, 2, 3.14, 'Hello', null, true];
arr[0]; // 返回索引为0的元素,即1
arr[5]; // 返回索引为5的元素,即true
arr[6]; // 索引超出了范围,返回undefined

Object

JavaScript的对象是一组由键-值组成的无序集合,例如:

var person = {
name: 'Bob',
age: 20,
tags: ['js', 'web', 'mobile'],
city: 'Beijing',
hasCar: true,
zipcode: null
};

JavaScript对象的 键(key) 都是字符串类型,值可以是任意数据类型。上述 person 对象一共定义了6个键值对,其中每个键又称为对象的属性,例如: person的name属性为'Bob',zipcode属性为null。

要获取一个对象的属性,我们用 对象变量.属性名 或者 对象变量[属性名] 的方式:

person.name;      // 'Bob'
person["name"]; // 'Bob'

null和undefined

null 表示一个“空”的值,它和  0  以及空字符串 '' 不同,  0  是一个数值, '' 表示长度为  0  的字符串,而 null 表示“空”。

在其他语言中,也有类似JavaScript的null的表示,例如Java也用null,Swift用nil,Python用None表示。但是,在JavaScript中,还有一个和null类似的undefined,它表示“未定义”。

JavaScript的设计者希望用 null 表示一个空的值,而 undefined 表示值未定义。事实证明,区分两者的意义不大。大多数情况下,我们都应该用 null 。 undefined 仅仅在判断函数参数是否传递的情况下有用。

最新文章

  1. Nova PhoneGap框架 第二章 理解index.html
  2. Ubuntu 登录锐捷 网卡被禁用 网口灯不亮解决
  3. python 线程之threading(五)
  4. (转) 读取xml文件转成List<T>对象的两种方法
  5. Linux下修改MySQL编码的方法
  6. 新安装ubuntu后几项配置
  7. node配置运行环境变量;
  8. poj1935(树形dp)
  9. LINUX 笔记-MOUNT
  10. PAT1041: Be Unique
  11. java基础(七)-----深入剖析Java中的装箱和拆箱
  12. Linux-高可用Keepalived概念篇
  13. C# 中ref与out关键字区别
  14. python call so
  15. TensorFlow:tf.nn.max_pool实现池化操作
  16. 微信小程序实现滚动分页加载更多
  17. 如何使用阿里巴巴iconfont矢量图片
  18. MT【182】系数奇怪的二次函数
  19. 【AI科技大本营】
  20. Java 中的 protected 访问修饰符你真的了解吗?

热门文章

  1. redis的持久化(RDB与AOF)
  2. Edge浏览器现已支持Tampermonkey(油猴)
  3. CentOS7.5搭建ES6.2.4集群与简单测试
  4. 贪吃蛇游戏(printf输出C语言版本)
  5. cb14a_c++_顺序容器的操作7_赋值与交换(swap)_vector转list
  6. cron计划任务
  7. Quartz.Net系列(七):Trigger之SimpleScheduleBuilder详解
  8. npm: no such file or directory, scandir '.../node_modules/node-sass/vendor'
  9. java中“”==“” equals hashcode的关系
  10. springboot @Cacheable 基本使用