一.内部样式<script>内容 </script>
外部样式<script src="js/index.js"></script>
console.log()输出变量到控制台
二.js里面的数据类型分为两种类型:
1.值类型 存储在栈里面的 使用空间固定 复制的是本身
number(数字型) boolean(真假) string(字符串类型) undefined(未定义类型) null(空值) 检测值类型 typeof
2.引用类型 存储在堆上的 使用空间不固定 使用指针来引用 复制该元素复制的是引用类型的指针
object(对象型) array(数组) function(js函数) 检测引用类型 instanceof
举例:
var method=function (){}
console.log(typeof method); //function
console.log(method instanceof Function);//true
三.js全局变量和部分变量
在代码块的外部叫全局(直属window),内部的叫局部
颜色区分:全局是紫色 局部灰色 (webstrom)
全局变量在任何地方可以使用,局部变量只能在当前作用域内部使用
四.声明提前
匿名函数没有声明提前
console.log(number);//undefined
var number=100;
console.log(number);
五.函数
1.定义函数
function fun(){
/*
* 函数体内部写的是可执行代码
* */
console.log("该函数被调用");
}
fun();
2.匿名函数 --没有名称的函数
var fun1=function (){
console.log("匿名函数执行");
}
fun1();
3.自执行函数 也是匿名函数
(function (){
console.log("自执行函数运行");
})(); ()用来执行
六.函数传参
1.定义函数传参
function params(a,b,c){
console.log(a,b,c);
}//a,b,c是形参
params(1,"ab",true);//传入的叫实参
2.匿名函数传参
var params1=function (a,b,c,d){
console.log(a,b,c,d);
}
params1(10,"bcd",false,undefined);
3.自执行函数传参
(function (a,b,c,d){
console.log(a,b,c,d);
})(1,2,3,4);
4.函数无形参列表 传递实参
function par(){
console.log(arguments[0]);
console.log(arguments[1]);
console.log(arguments[2]);
console.log(arguments[3]);
}
par(1,2,3,4); //参数列表对象 arguments
//arguments 集合类型 也是数组型 key:value key也叫索引 0开始
七.++a和a++
++a先自增或者自减在运算 a++先运算在自增或者自减,结局输出的值是这一回合的值带入算出,加减后的值下一回计算才代入
var a=10;
var b=20;
console.log(a+b–); 30
console.log(a±-b); 29
console.log(a+(++b)); 31
console.log(a+++b)); 30 不加括号默认前面先执行
八.
字符串在加法运算中,只要一个是字符串,就是字符串拼接。减法和乘法除法和正常一样。
var s1=“10”;
var s2=“15”;
var s3=6;
console.log(s1+s2);//1015 字符串拼接
console.log(s2-s1);5
console.log(s2*s1);150
console.log(s1+s3);106
九.逻辑运算符
= :赋值
==
:值一致类型可以不同
===:两边值和类型都一致 判断两边相等
||或 console.log(a>b||a>c); 只要有一个条件满足就true 否则false
&&和 console.log(a<b&&a<c); //条件全为true 则true 否则false
!非 取反面 数字0:false 非0为true
var a=3;
var b=4;
var c=2;
console.log(!(a<b)); false
console.log(!a<b); true
console.log(false<true); true false是0,true非0
!==
绝对不等 只要一个 值或者类型不等 就成立
十.循环
逻辑结构 if else 或者 if else if else 根据条件执行 可以相互嵌套使用
if(){}
if(){}else{}
if(){}else if(){} esle{}
switch 条件选择
break 跳出当前结构
switch (){
case : break;
default: break;
js里面的循环
for 指定代码块执行的次数
while 循环
do while 循环
使用代码调试 看for循环的执行过程
1.到浏览器的控制台
2.点击sources栏
3.在当前栏位左边项目文件点击当前页面
4.想要看哪一行代码执行 在当前行之前单击 出现蓝色的锚标 在刷新页面
右边的调试按钮 第一个 为F8 为直接运行终止 第二个按钮 F10 运行下一行(遇到方法直接执行完成不会进方法)
第三个按钮为F11 和F10功能一样 (遇到方法会进方法)
5.调试完成把 定的锚标去掉
十一.
break 是用于终止循环的
continue 是用于跳过当前循环执行下次循环
九九乘法表:
js里面的运算符 在表达式里面使用的 三元运算符 条件?true:false
空格 \n 换行 \t制表符
第一个显示在控制台,第二个显示在网页中
for (var i = 1; i < 10; i++) {
var str="";
for (var k = 1; k <= i; k++) {
str+=i+"*"+k+"="+i*k +"\t";
}
console.log(str);
}
for (var i = 1; i < 10; i++) {
for (var k = 1; k <= i; k++) {
document.write(i+"*"+k+"="+i*k +(i*k<10?" ":" "));
}
document.write("<br/>")
}
菱形
var h=9;
var ch=(h-1)/2;
for(var i=0;i<h;i++){
var str="";
if(i<=ch){
for(var k=0;k<ch-i;k++){
str+=" ";
}
for(var k=0;k<2*i+1;k++){
str+="*"
}
}
else{
for(var k=0;k<i-ch;k++){
str+=" ";
}
for(var k=2*(h-i)-1; k>0;k--){
str+="*"
}
}
console.log(str);
}