从学习JavaScript到如今已经有半个月的时间了,从简单的基础知识到如今的基础逻辑思惟练习,知识点也在逐步的增长。html
学习的难度也在逐步的加深。刚开始的我还能接受这些,但是随着知识点的增长,感受本身学习起来愈来愈吃力,好比最近学函数
习的函数,在C语言阶段,个人函数就学的不是很好,应该算本身的一个难点,现在又接触到函数,仍是有点儿吃力,但愿自学习
己在后面的学习阶段可以有所改变。总的学习知识点以下:this
第一阶段:接触基础知识spa
一、JS输出方式:htm
控制台输出:ip
console.log("xxx");作用域
页面输出:文档
document.write(“xxx”);字符串
弹出输出:
alert ("xxx");
prompt ("xxx");
二、变量:
变量是储存数据信息的内容。
变量是被认为是有名字的容器。使用变量名为值命名;
必须先声明一个变量,变量才能被使用;
变量是弱类型,也被称为松散型;指能够用来保存任何类型的数据;
三、变量提高:
a、先解析,获取全部被生命的变量,以后在一行一行运行。就会形成所
有的变量声明提高到代码头部;
b、只对var命名的变量有效;
第二阶段:
一、数据类型:
JavaScript语言中每个值,都属于某一种数据类型。
在ES5中数据类型分为六种:五种原始类型,一种引用数据类型;
二、原始类型:
a、number(数字);
b、boolean (布尔);
c、string (字符串);
d、null ;用于表示某个变量值为空。
e、undefined;用来肯定一个已经建立可是没有初始值的变量。
三、数据类型转换:
a、parseInt()函数:转换成整数;
b、parseFloat ()函数:解析一个字符串,返回一个浮点数;转换成小数
c、Number :能够将任意类型的值转换成数字;
四、强制转换成字符串:
String()函数:能够将任意类型转换成字符串;
五、强制转换成布尔值:
Boolean ()函数:能够将任意类型转换成布尔值;
除了如下5个结果为
false,其余得值全为true:
undefined、null、0、NaN、,,,
第三阶段:运算符
一、算术运算符:
+ - * / % ++ --
++:自动运算符,整数值逐次加1;
--:自动运算符,整数值逐次减1;
注意:
自增运算符:
前置型(++a):先执行加操做,再应用变量值。
后置型(a++):先引用变量值,再进行自加操做。
二、比较运算符:
> >= < <= == != === !===
三、逻辑运算符:
&& || !
&&:一假必假
||:一真必真
四、赋值运算符:
= += -= *= /= %=
五、字符串链接运算符:
+
六、三目运算符/条件/三元
? :
七、特殊运算符:
typeof instanceof
第四阶段:流程控制语句
一、三种执行语句:
a、顺序执行
b、选择执行
c、循环语句
二、条件语句:
经过判断获得的结果,来决定是执行仍是跳过指定的代码。
三、if语句:
例:
var a = 3;
if (a>5){
console.log(a);
}
console.log("xxxx");
四、if else语句:
例:
var b = 5;
if (b>10) {
console.log("b大于10");
}
else {
console.log("b小于10");
}
五、else if语句:
例:
var sum = 98;
if (sum>90){
console.log("优");
}
else if(sum>60 && sum<90){
console.log("良");
}
else {
console.log("差");
}
六、swich case 语句:
例:
var a = 4;
switch(a){
case 1:
console.log("111");
break; //终止
case 2:
console.log("222");
break;
case 3:
console.log("333");
break;
default: //当值未声明时,执行default
console.log("4444");
}
七、循环语句:
a、while 循环:
例:
var a = 1;
while (a<5){ 先判断
console.log(a); 再执行
a++;
}
输出结果:一、二、三、4;
b、do while循环:
例:
var num =1;
do{
console.log(num); 先执行
num++;
}while(num < 5); 再判断
输出结果:一、二、三、4;
while与do while的区别:
while:先执行,再判断;
do while:先判断,在执行;
for 语句:
例:
一、初始化表达式:初始化一个计数器,再循环开始前记录初始状态。
二、条件判断表达式:判断给
三、循环操做表达式:
for (var i = 0;i < 10; i++) {
console.log(i);
}
for (表达式1;表达式2;表达式3){
表达式4(大括号里面全部代码)
}
执行顺序:表达式1》表达式2》表达式4》表达式3》表达式1.....
for 嵌套语句:
例:
for (var i=0;i<5;i++){
for(var j=0;j<3;j++){
console.log(j);
}
}
break:终止当前整个循环;
continue:终止当前这一轮循环;
第五阶段:函数:
一、定义;
例:
function fn(){
console.log("this is a function");
}
二、定义方
. 函数声明方式:
//函数声明
function fn(){
console.log("1111");
}
. 字面量方式:不存在函数提高;
//字面量 (函数表达式)
var fn = function(){
console.log("1111");
}
函数调用:fn ();
函数名+()一是点用函数;二是接受返回的值;
三、函数参数:
a、形参:定义函数时使用的参数;
b、实参:调用函数时使用的参数;
四、return语句:
例:
function fn (msg){
return "hello" + msg;
}
var fun = fn("world");
console.log(fun);
注意: return默认状况下返回的是undefined。
五、全局做用域与局部做用域:
函数做用域(局部做用域)
变量做用域:指的是变量可被访问的范围。分为全局做用域和局部做用域。
*全局做用域:一个html文档只有一个全局做用域,,任何位置都能访问
*局部做用域:也叫函数做用域,指的就是在函数内部的区域。
声明在全局做用域的变量就叫作全局变量,声明在局部做用域的变量叫作局部变量。
function fn(){
var str = "abc";
console.log(str);、/*写在此处才正确*/
}
fn();
console.log(str);/*写在此处会出现错误*/
六、函数提高变量:
七、匿名函数:
例:
function(){
}
当即执行函数(自调函数);
例:调用1
(function (a,b){
console.log(a+b)
}) (1,2);
例:调用2"
(function(a,b){
console.log(a+b)
} (2,4));
ES6:
函数参数的默认值 (函数的默认参数)
例:
function fn(a,b){
if(a === undefined){
a=1;
}
if(b === undefined){
b=1;
}
return a+b;
}
console.log(fn(x,x));
function fn(a=1,b=2){
return a+b;
}
console.log(fn(x,x));
八、箭头“”函数:
例:
a => a * a;
a => {
if(){
}
else{
}
}
(a) =>{
console.log(a);
return;
}
var fn = (a) =>{
console.log(a);
return;
}
fn(1);
注意:当箭头函数没有参数或者有多个参数
以上是最近的学习知识点,在最近几天的学习中,感受很混乱,常常理不清思路,感受在上课期间也不在状态,从而在后面函数的练习中出现困难,但愿后面本身能克服,改变现状。