书写位置
- 直接书写在
script
元素内部
<script>
</script>
- 书写到外部的js文件中,在页面中引用
<script src="script/test.js"></script>
浏览器中的输出语句
document.write(1);
console.log(2);
alert(3);
注释
- 单行注释
//
- 多行注释
/*
*/
数据类型
原始类型(基本类型)
- number
- string
- boolean
- undefined
- null
number : 0b——2进制;0——8进制;0x——16进制;
string:'
或者"
或者模板字符串`
boolean:true
或者false
undefined: 未定义、不存在
null:空、不存在
<script>
console.log(0b10); // 2
console.log(010); // 8
console.log(0x10); // 16
</script>
应用类型
- object
- function
console.log({
name: "小明",
age: 18,
sex: true // true === 男;false === 女
});
得到数据类型,
type
;console.log(typeof 1)
;
++
与--
基本功能
++
: 变量自增1;--
: 变量自减1;
表达式中
name | description |
---|---|
x++ | 变量自增1;得到结果为表达式 之前 的值 |
x-- | 变量自减1;得到结果为表达式 之前 的值 |
++x | 变量自增1;得到结果为表达式 之后 的值 |
--x | 变量自减1;得到结果为表达式 之后 的值 |
优先级(高 - 低)
++ --
* / %
+ -
计算规则
- 从左向右看;
- 遇到操作数,将数据的值直接取出;
- 遇到运算符,在相邻的2个运算符中,左边运算符的优先级 大于或等于 右边运算符的优先级,则直接运行左边的运算符,否则向后看;
实例
var x = 1;
var y = x + x++ * (x = x + x++ * ++x) + x;
// 运算过程
y = 1 + x++ * (x = x + x++ * ++x) + x; // x = 1;
y = 1 + 1 * (x = x + x++ * ++x) + x; // x = 2;
y = 1 + 1 * (x = 2 + x++ * ++x) + x; // x = 2;
y = 1 + 1 * (x = 2 + 2 * ++x) + x; // x = 3;
y = 1 + 1 * (x = 2 + 2 * 4) + x; // x = 4;
y = 1 + 1 * (x = 2 + 8) + x; // x = 4;
y = 1 + 1 * (x = 10) + x; // x = 10;
y = 1 + 1 * 10 + x; // x = 10;
y = 1 + 10 + x; // x = 10;
y = 11 + x; // x = 10;
y = 11 + 10; // x = 10;
y = 21; // x = 10;