js基础知识点:
js是前段网页交互代码(可以做特效,数据交互,数据展示,调用API –程序应用集 百度地图 数据图表等等)
js引入网页有两种方式:
1、 外部引入<script src=” ” type=”text/javascript”>(type可以省略)
2、 直接嵌入到网页里:上部嵌入和下部嵌入(它们的解析顺序不同 可以稍微提高网页的性能 先初始化页面)
js中变量的声明(js中严格区分大小写)
js中变量的作用域:全局变量和局部变量(在声明变量的时候不写var 声明变量为全局变量)
变量声明的关键字var
声明单个变量:var a;
声明多个变量: var a ,b;
命名规则:驼峰命名法;
变量的数据类型:number string boolean object null undefined
检测变量数据类型的方法: typeOf( );
例如:
Var b=”nihao”;
Console.log(typeof b);
检测出来b为:字符串string类型;
Js中函数的声明
Js是面向对象开发的
函数声明关键字 function
简单函数的声明:
function showname(){ }
值类型 值 引用类型 function 对象 --值类型是 值的引用空间不变 引用类型 引用的位置是可变的
//带返回值的函数
function showinfo() {
return '1';
}
var a = showinfo();
console.log(a);
//带参函数 形参 实参
function showname(name, sex, age) {
return name;
}
var name = showname("张三", "男", 18);
console.log(name);
//如果函数没有参数列表 传递参数怎么接收参数
function showData() {
//arguments 参数列表对象
//arguments 取值按照集合来取值 key:value 索引
console.log(arguments[0], arguments[1], arguments.length);
}
showData("小花", 18);
//匿名函数 不带函数名称的函数 用变量去接收 ---匿名函数不提前声明
//list(); not a function 报错
var list = function () {
console.log(arguments);
return arguments[0];
}
console.log(list(1, 2, 3));
//自执行函数 自执行的函数体
// 有实参形参 返回值
var mm = (function (x, y) {
console.log(x, y);
console.log(arguments);
return x + y;
})(1, 2);
console.log(mm);
js中变量里面的闭包 :使用别人的局部变量 (闭包会大量占用内存 ,会导致网页内存泄露 ,尽量避免使用闭包 ,会将闭包的值存在内存里面)
局部函数取就近:
function fooOuter2(){
var name="local";
function foo( ){
console.log(name);//local 局部函数取就近
}
foo( );
}
fooOuter2( );
方法的重写:
var m=0;
function f2(n){
temp=function (){
m+=n;
}
temp();
//方法的重写 内置的方法有自己的功能 重写
//tostring object String tostring 重写tostring 会自动执行String 类里面的tostring
f2.toString=function (){
console.log(1);
return m;
}
return f2;
}
console.log(f2(1)(2)(3));
js中的运算符:算数运算符 逻辑运算符 比较运算符
算数运算符: + - * / % ++ –
++ – (前置在预算之前++或-- 后置是先运算再++或–)
逻辑运算符:&& // !
比较运算符 > < >= <= !=
Js中的语句:循环语句 条件语句 switch 选择结构 三元运算法
循环语句:
for( ; ; ){
}
while do while 循环语句— do while 至少执行一次
运用for循环打印一个9*9乘法表:
for( var i=1;i<=9; i++){
for(var j=1;j<=I;j++){
document.write(i + "*" + k + "=" + ((i * k) < 10 ? (i * k) + " " : (i * k) + " "));
}
document.write("<br>")
}
条件语句:
if语句:if(条件){
}else{
}
Switch语句:
Switch(条件){
case :
break;
case :
break;
case :
break;
}
三元运算法:表达式一?表达式二:表达式三;
表达式一为true执行表达式二,否则反之;