这是我参与8月更文挑战的第9天,活动详情查看:8月更文挑战
js书写位置
- 行内
<input type="button" value="按钮" onclik="alert("hello js") />
- 写在script
<head>
<script>
alert("hello js")
</script>
</head>
- 写在外部js文件中,在页面引入
<script src="main.js"></script>
- 注意
- script不能写成单标签
- 加载顺序是自上而下
注释
- 单行
// 注释 - 多行
/* 多行 */
变量(掌握)
- 声明
var age
- 赋值
var age
age = 18
- 同时声明多个
var age, name, sex
age = 10
name = 'you'
- 定义变量
var age = 10
- 同时定义多个变量并赋值
var age = 10, name = 'you'
数据类型
- 五大基本数据类型
- Number: 数值类型
- String: 字符类型
- Bollean: 布尔类型
- Undefined: 未定义类型
- Null: 空类型
- 获取变量类型(掌握)
typeof 1. typeof 变量名 2. typeof (变量名)// typeof 变量名/值 console.log(typeof 123);//number console.log(typeof '123');//string console.log(typeof true);//boolean console.log(typeof undefined);//undefined console.log(typeof null);//object,对象Number类型也叫 数值类型 。
运算符
- 算数运算符
//+ - * / %(取余) 3%2=1 var x = 10; var y = 5; console.log(x + y);//15 console.log(x - y);//5 console.log(x * y);//50 console.log(x / y);//2 console.log(10 % 3);//1 - 一元运算符
/前置++ var num1 = 8; ++num1;//自身加1 console.log(num1); //后置++ var num1 = 5; num1++;//自身加1 console.log(num1); - 总结
- 前置++:先加1,后参与运算
- 后置++:先参与运算,后加1
- 上面两个理解后,下面两个自通
- 前置-- :先减1,后参与运算
- 后置-- :先参与运算,后减1
数据类型转换
- 转换成数值类型
//使用parseInt() (掌握) //函数如果第一个字符是数字或运算符号,那么就开始解析,直到遇到非数字字符,停止解析并得到解析结果 console.log(parseInt("10"));//10 console.log(parseInt("10abcdefg"));//10 console.log(parseInt("g10"));//NaN console.log(parseInt("1fds0"));//1 console.log(parseInt("10.98"));//10 console.log(parseInt("10.98abcdefg"));//10// parseFloat()函数 (掌握) // 把其他类型转换成浮点数 console.log(parseFloat("10"));//10 console.log(parseFloat("10abcdefg"));//10 console.log(parseFloat("g10"));//NaN console.log(parseFloat("1fds0"));//1 console.log(parseFloat("10.98.98"));//10.98 console.log(parseFloat("10.98abcdefg"));//10.98//Number()函数 (仅做了解) // 可以把任意值转换成数值类型,如果要转换的字符串中有一个不是数值的字符,转换结果为 NaN console.log(Number("10"));//10 console.log(Number("10abcdefg"));//NaN console.log(Number("g10"));//NaN console.log(Number("1fds0"));//NaN console.log(Number("10.98"));//10.98 console.log(Number("10.98abcdefg"));//NaN//+,-0 运算(仅做了解) var strNum = '18'; console.log(+strNum); // 18 取正 console.log(-strNum); // -18 取负 console.log(strNum - 0); // 18 strNum先被转换成数值类型,再做减法运算 console.log(strNum + 0); // 180 先被转换成字符串类型,再做拼接
注意
加号和减号放在变量前,分别是取正、取负的效果;
变量减去0,默认先将变量转换成数值类型,再做减法运算,变量减去0;
-
转换成字符串类型
toString()(掌握)Stirng()(了解) 注意 toString()方法只能将数值类型和布尔类型转换成字符串类型,不能将Undefined和Null类型转成字符串类型 String()函数能将所有基本类型转成字符串类型
-
转换成布尔类型
- 抓换成false的五种特殊值
"" (空白字符串) 0 (保存0 -0) undefined null NaN - 其他的为true
- 抓换成false的五种特殊值
-
运算符
- 运算符的优先级
优先级从高到底 1. () 优先级最高 2. 一元运算符 ++ -- ! 3. 算术运算符 先* / % 后 + - 4. 关系运算符(比较大小) > >= < <= 5. 相等运算符(比较相等) == != === !== 6. 逻辑运算符 先&& 后|| 7. 赋值运算符 = += -= *= /= %=- 三元运算符
例: var age = 18 var result = age >= 18 ? "成年了" : "未成年" console.log(result) 例:两个值找最大 var num1 = 8 var num2 = 2 var max = num1 > num2 ? num1 : num2 console.log(max) -
数组
- 遍历数组
for(var i = 0; i < arr.length;i++){ }- 数组练习
//例1:求数组中所有元素的和 var arr1 = [10,20,30,40,50]; var sum = 0; for(var i = 0; i < arr1.length; i++){ sum += arr1[i]; } console.log(sum);//150 //例2:求数组中所有元素的平均值 var arr2 = [1,2,3,4,5]; var sum2 = 0; for(var i = 0; i < arr2.length; i++){ sum2 += arr2[i]; } console.log(sum2 / arr2.length);//3