HTML 定义了网页的内容 CSS 描述了网页的布局 JavaScript 网页的行为
JavaScript是一种面向对象的编程语言(可以在网页上实现复杂的功能交互等),属于解释型语言。 在客户端运行(写在DIV和CSS之间,辅助网页制作) *在服务器端运行的是比如Node.js
内部的JS: //注意文件名是xxx.js,通常放在body的最后面,即前 内联JS:Click me //不推荐
类型、变量、运算符、控制结构(if,for,switch,while语句)、对象、数组、函数、闭包
Java Script中的数据类型分为6种,两类:简单数据类型和复杂数据类型。 简单数据类型包括 Number、Undefined、Null、Boolean 、String。 复杂数据类型是Object。
console.log(0.1 + 0.2); //输出结果为0.30000000000000004 //*在js中不区分整数型和浮点数型,只要加了小数点都算浮点型。因此默认都算浮点数(双精度64位格式) //使用数学运算时用到方法:Math打点,如Math.sin(3),Math.PI等 //字符串 console.log("hello".length); console.log("hello".charAt(0)); //截取字符串指定位置字符,从0开始计数 console.log("hello,world".replace("hello", "night")); //替换指定字符 console.log("hello,world".toUpperCase()); //让字符串变成大写 console.log("hello,world".toLowerCase()); //让字符串变成小写 //布尔:ture & false变量作用域: var没有作用域,即使在ifelse语句里定义,一样可以被外部代码访问 而let与var的区别:let是有作用域的,语句块内let定义的变量无法被外部代码使用 ——推荐使用let,尽量不要使用var
&&、||、!、++、–等
x += 5; x = "3" + 4 + 5;//输出结果:345。在字符串后加数字,后续默认转化为字符串执行 x = 3 + 4 + "5";//输出结果:75。会先计算3+4,再同字符串相加 console.log(123 == "123");//输出结果:true。“==”因为有类型自动转换,最终比较的是“123”和“123” console.log(123 === "123");//输出结果:false。“===”不会进行类型转换,直接将数字和字符进行对比 var allowed = age >= 18 ? "Yes" : "No";//三元运算符我的理解是这样的,一个复杂的functionC一般会由多个更简单的function组成,而这些简单fanction之间的关系可能是这样的:一个functionA能够表达的前提 是以另一个functionB的完成为基础。那么functionB就叫回调函数,functionA叫高阶函数,functionC叫组合函数。for example:functionC:穿新衣服参加婚礼,functionB:买新衣服&&有人举行婚礼 functionA:参加婚礼。functionB通过返回新衣服和婚礼,来提供fuctionA行动的前提。所以:functionB是functionA的回调函数。)