var a; // 此时 a 为 Undefined a = "http://task.lmcjl.com/"; // 此时 a 为 String 类型 a = 123; // 此时 a 为 Number 类型JavaScript 中的数据类型可以分为两种类型:
提示:Symbol 是 ECMAScript6 中引入的一种新的数据类型,表示独一无二的值。
typeof x; // 获取变量 x 的数据类型 typeof(x); // 获取变量 x 的数据类型
''
或双引号""
包裹起来的文本,例如 '123'、"abc"。需要注意的是,单引号和双引号是定义字符串的不同方式,并不是字符串的一部分。 \
来转义字符串中的引号,或者选择与字符串中不同的引号来定义字符串,如下例所示:var str = "Let's have a cup of coffee."; // 双引号中包含单引号 var str = 'He said "Hello" and left.'; // 单引号中包含双引号 var str = 'We\'ll never give up.'; // 使用反斜杠转义字符串中的单引号
var num1 = 123; // 整数 var num2 = 3.14; // 浮点数
注意:Number 类型所能定义的数值并不是无限的,JavaScript 中的 Number 类型只能表示 -(253 - 1) 到 (253 -1) 之间的数值。
对于一些极大或者极小的数,也可以通过科学(指数)计数法来表示,如下例所示:var y=123e5; // 123 乘以 10 的 5 次方,即 12300000 var z=123e-5; // 123 乘以 10 的 -5 次方,即 0.00123另外,Number 类型中还有一些比较特殊的值,分别为 Infinity、-Infinity 和 NaN,其中
提示:如果某次计算的结果超出了 JavaScript 中 Number 类型的取值范围,那么这个数就会自动转化为无穷大,正数为 Infinity,负数为 -Infinity。
var a = true; // 定义一个布尔值 true var b = false; // 定义一个布尔值 false var c = 2 > 1; // 表达式 2 > 1 成立,其结果为“真(true)”,所以 c 的值为布尔类型的 true var d = 2 < 1; // 表达式 2 < 1 不成立,其结果为“假(false)”,所以 c 的值为布尔类型的 false
var num; console.log(num); // 输出 undefined在使用 typeof 操作符查看未赋值的变量类型时,会发现它们的类型也是 undefined。对于未声明的变量,使用 typeof 操作符查看其类型会发现,未声明的变量也是 undefined,示例代码如下:
var message; console.log(typeof message); // 输出 undefined console.log(typeof name); // 输出 undefined
var str = "123"; var sym1 = Symbol(str); var sym2 = Symbol(str); console.log(sym1); // 输出 Symbol(123) console.log(sym2); // 输出 Symbol(123) console.log(sym1 == sym2); // 输出 false :虽然 sym1 与 sym2 看起来是相同的,但实际上它们并不一样,根据 Symbol 类型的特点,sym1 和 sym2 都是独一无二的
{ }
,语法格式如下:{name1: value1, name2: value2, name3: value3, ..., nameN: valueN}
其中 name1、name2、name3、...、nameN 为对象中的键,value1、value2、value3、...、valueN 为对应的值。 对象名.键
的形式,如下例所示:var person = { name: 'Bob', age: 20, tags: ['js', 'web', 'mobile'], city: 'Beijing', hasCar: true, zipcode: null }; console.log(person.name); // 输出 Bob console.log(person.age); // 输出 20
[ ]
,数组中的每个元素使用逗号进行分隔,例如:[1, 2, 3, 'hello', true, null]另外,也可以使用 Array() 函数来创建数组,如下例所示:
var arr = new Array(1, 2, 3, 4); console.log(arr); // 输出 [1, 2, 3, 4]数组中的元素可以通过索引来访问。数组中的索引从 0 开始,并依次递增,也就是说数组第一个元素的索引为 0,第二个元素的索引为 1,第三个元素的索引为 2,以此类推。如下例所示:
var arr = [1, 2, 3.14, 'Hello', null, true]; console.log(arr[0]); // 输出索引为 0 的元素,即 1 console.log(arr[5]); // 输出索引为 5 的元素,即 true console.log(arr[6]); // 索引超出了范围,返回 undefined
function sayHello(name){ return "Hello, " + name; } var res = sayHello("Peter"); console.log(res); // 输出 Hello, Peter此外,函数还可以存储在变量、对象、数组中,而且函数还可以作为参数传递给其它函数,或则从其它函数返回,如下例所示:
var fun = function(){ console.log("http://task.lmcjl.com/js/"); } function createGreeting(name){ return "Hello, " + name; } function displayGreeting(greetingFunction, userName){ return greetingFunction(userName); } var result = displayGreeting(createGreeting, "Peter"); console.log(result); // 输出 Hello, Peter
本文链接:http://task.lmcjl.com/news/13886.html