JavaScript 学习笔记1_基本语法+类型+变量_20181203

/**********************************************************************
** author		: Bugliu
** date			: 2018-12-03
** description		: 基本语法+数据类型+变量
** 学习网站		: www.liaoxuefeng.com
**********************************************************************/

// 《基本语法》

/*
 每个语句以;结束,,语句块用{...}。但是,JavaScript并不强制要求在每个语句的结尾加;,
 浏览器中负责执行JavaScript代码的引擎会自动在每个语句的结尾补上;。
 
 让JavaScript引擎自动加分号在某些情况下会改变程序的语义,导致运行结果与期望不一致。
 */
 
// 完整的赋值语句
var x = 1;
var x = 1; var y = 2; // 一行可以写多个语句,但不建议

// 字符串
'hello world';

//  “//” 注释单行  "/*...*/" 注释多行

// JavaScript严格区分大小写,如果弄错了大小写,程序将报错或者运行不正常。



// 《数据类型》

/*
JavaScript不区分整数和浮点数,统一用Number表示,以下都是合法的Number类型
*/

123; 		//整数 123
0.456; 		//浮点数0.456
1.2345e3;	//科学计数法标识1.2345*1000,等同于1234.5
-99; 		//负数
NaN; 		//NaN表示Not a Number, 当无法计算结果时用NaN 表示。
Infinity; 	//Infinity 表示无限大,当数值超过了JavaScript的Number所能表示的最大值时,就表示为Infinity
0xff;		//十六进制

//字符串 单引号 双引号均可
’hello'; 
"world";

//布尔值 true, false
true;
false;

//与 “&&”,或“||”,非“!”

//运算符 
false == 0; // true
false === 0; //false
//第一种是==比较,它会自动转换数据类型再比较,很多时候,会得到非常诡异的结果;
//第二种是===比较,它不会自动转换数据类型,如果数据类型不一致,返回false,如果一致,再比较
//由于JavaScript这个设计缺陷,不要使用==比较,始终坚持使用===比较。

//NaN这个特殊的Number与所有其他值都不相等,包括它自己
NaN === NaN; //false

// 判断NaN的方法
isNaN(NaN);  //true

// 浮点数比较
1/3 === (1-2/3) // false
// 浮点数在运算过程中会产生误差,因为计算机无法精确表示无限循环小数。要比较两个浮点数是否相等,
// 只能计算它们之差的绝对值,看是否小于某个阈值
Math.abs(1/3 - (1-2/3)) < 0.0000001; //true

// null表示空,undefined表示未定义,大多数用null, undefined仅在判断函数参数是否传递的情况下有用。

// 数组可包含任意类型元素
var arr = [1, 2, 3.14, 'hello', null, truej ];
arr[0]; // 返回索引为0的元素,即1

new Array(1, 2, 3);  // 创建数据[1,2,3] 不建议使用

// js的对象是一组键-值组成的无序集合
var persion = {
	name: 'bob',
	age: 20,
	tags: ['js', 'c', 'c++']
	code: null
};

//获取对象的属性
persion.name;  // bob
persion.age;   // 20

// 变量名是大小写英文、数字、$和_的组合,且不能用数字开头。变量名也不能是JS的关键字,
// 如if、while等。申明一个变量用var语句.
// 变量名可以用中文,但最好禁止使用
var a = 100;
var $B = 1;
var s_007 = '007';
var Answer = true;
var t = null;

// 显示变量内容
console.log(s_007);    	// 007
alert(a);				// 100
// 使用console.log()代替alert()的好处是可以避免弹出烦人的对话框


// strict 模式
/*
 如果一个变量没有通过var申明就被使用,那么该变量就自动被申明为全局变量:
 在strict模式下运行的JavaScript代码,强制通过var申明变量,未使用var申明
 变量就使用的,将导致运行错误.
 启用strict模式的方法是在JavaScript代码的第一行写上:'use strict';
 
 不支持strict模式的浏览器会把它当做一个字符串语句执行,支持strict模式的浏
 览器将开启strict模式运行JavaScript
 
 如果浏览器支持strict模式,且定义变量var,则会报错“ReferenceError”.
*/


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值