JavaScript 是一种弱类型语言,javascript的变量类型由它的值来决定。
定义变量需要用关键字 'var',
不使用var关键字定义全局变量在严格模式下将会执行错误 "use strict";
var a = 123;
var b = 'asd';
//同时定义多个变量可以用","隔开,公用一个‘var’关键字
var c = 45,d='qwe',f='68';
#
Javascript声明变量的时候,虽然用var关键字声明和不用关键字声明,很多时候运行并没有问题,但是这两种方式还是有区别的。可以正常运行的代码并不代表是合适的代码。
var num = 1;
是在当前域中声明变量. 如果在方法中声明,则为局部变量(local variable);如果是在全局域中声明,则为全局变量。
而 num = 1;
事实上是对属性赋值操作。首先,它会尝试在当前作用域链(如在方法中声明,则当前作用域链代表全局作用域和方法局部作用域etc。。。)中解析 num; 如果在任何当前作用域链中找到num,则会执行对num属性赋值; 如果没有找到num,它才会在全局对象(即当前作用域链的最顶层对象,如window对象)中创造num属性并赋值。
注意!它并不是声明了一个全局变量,而是创建了一个全局对象的属性。
变量、函数、属性、函数参数命名规范
字母数字下划线($)
首字母不能为数字
严格区分大小写
不能使用关键字
基本数据类型: typeof函数获取一个变量的类型:
* boolean - 如果变量是 Boolean 类型的
* number - 如果变量是 Number 类型的 (整数、浮点数)
* string - 如果变量是 String 类型的 (采用""、 '')
* object - 如果变量是一种引用类型或 Null 类型的
如:new Array()/ new String()...
* function -- 函数类型
* undefined - 如果变量是 Undefined 类型的
例子:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>数据类型</title>
</head>
<body>
<script>
// 基本数据类型 typeof
// 1.布尔类型 boolean
// 只有两个值 true false 首字母小写
var b=true;
var b=false;
console.log(typeof(b));
// 2.数值类型 NaN; not a number
var n=123;
var n=-12.3;
// 十六进制
var n=0xf;
//八进制 以0开头
var n=01;
var n=NaN;
console.log(n,typeof(n));
// 3.字符串类型
// 只要是加引号的字符都是字符串类型
var s='123';
var s="abc123";
console.log(s,typeof(s));
// 4.对象类型 数组 null
var obj={name:'zhangsan',age:18};
var obj=[1,2,3,4];
var obj=new Array(1,2,3);
var obj=null;
console.log(obj,typeof(obj));
// 5.函数类型
// 如果函数没有返回值 那就返回undefined
function a(){
console.log('这是一个函数');
}
var Func=a();
console.log(Func,a,typeof(a));
// 6.未定义 undefined
var u;
console.log(u,typeof(u));
</script>
</body>
</html>