欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JavaScript的认识及基础语法--变量,函数

程序员文章站 2022-04-04 16:04:40
...

JavaScript的认识及基础语法–变量,函数

JAVAscript

特点:

1.轻量

2.可插入HTML页面编程代码

3.插入HTML后,可用所有浏览器执行

javascript又叫ECMAscript5 ECMAscript6 ECMAscript7

es5 es6 es7

js是一个编程语言 web 页面上

JS嵌入网页的方式

1.内嵌(在head或者body里面内嵌都是可以的,要注意代码是否会报错)

2.外部引入(引入外部文件 在head或者body)

JS的注释

单行注释://

块注释:

JS语法严格区分大小写

JS语法–变量

js字面变量分为变量和常量

1.变量是存放可变化值的量

2.常量是存放不可变化的值 3.14

js定义字面量

关键字 var这个关键字可以定义任意类型的变量

定义规则:var 名称=值

命名规则(驼峰 帕斯卡)

js里面var声明变量可以存储任何类型的值

number(null)

```javascript
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>js的基础语法-变量</title>
    <script>
/*         js里面的数据类型 分为两种类型

1值类型 --存储在栈里面 使用空间固定 num bllearn string underfined null 检测值类型 typeof

2引用类型--储存在堆里面 使用空间不固定 使用指针来引用 复制该元素复制的引用类型指针

object array(数组) tunticon 检测引用类型 
undefined 表示变量没有值

null 空值

js里面定义变量可以不写关键字

js里面的变量有作用域区分

1.全局变量

2.局部变量

3.根据代码块来区分作用域

这些概念属于相对理论 在代码块的外部叫全局(直属windo)内部的叫局部

全局变量在任何地方都可以使用

局部变量只能在当前作用域内部使用

使用var定义的变量不可删除

不使用var 声明的变量可以删除

 */
        var name = 'mark';
        console.log(name);
        var num = 1;
        var null1 = null;
        var not = undefined;
        var obj = {};
        console.log(typeof not);

        var method = function (){}
        console.log(typeof method);
        console.log(method instanceof Function);

        var m1 = '10';
        var m2 = "abc";
        console.log(Object.getOwnPropertyDescriptor(window, "m1"));
        console.log(Object.getOwnPropertyDescriptor(window, "m2"));

        // delete m1;
        // delete m2;
        // console.log(m1,m2);

        // var all = "www";
        // function method1(){
        //     console.log(all);
        // }
        // function method2(){
        //     console.log(all);
        // }
        // method1();
        // method2();

        //js里面声明提前的问题
        console.log(number);
        var number = 100;
        // console.log(number);

    </script>
</head>
<body>
    
</body>
</html>

JavaScript的函数

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
/*         函数

函数是引用类型

函数是由事件去当或者倍调用执行的 重复 代码块

关键字: funtion

定义规则: function 名称(){}
函数也存在声明提前
 */
console.log(fun instanceof Function);
function fun(){
    /* 
    函数体内部写的是可执行代码
    */
   console.log("该函数被执行");
}
//执行函数,函数名称()
    fun();

///匿名函数--没有名称的函数
// 匿名函数是没有声明提前的
console.log(fun1);
var fun1 = function (){
    console.log("匿名函数执行")
}
    fun1();

//自执行函数,也就是匿名函数
(function (){
    console.log("自执行函数运行");
})();

//函数的参数问题
//参数分为形参 实参(传入的值)

//函数的形参是名称,隔开 参数的个数没有固定
function params(a,b,c){
    console.log(a,b,c);
}
params(1,"ab",true);

//匿名函数传参
var params1 = function (a,b,c,d){
    console.log(a,b,c,d);
}
params1(10,"bas","dsd");

//自执行函数传参
(function (a,b,c,d){
    console.log(a,b,c,d);
}
)
(1,2,3,4)

//函数无形参列表,传递实参
//参数列表对象 argument
//argument 集合类型 也是数组型 key:value 也叫索引

function par(){
    console.log(arguments[0]);
    console.log(arguments[1]);
    console.log(arguments[2]);
    console.log(arguments[3]);
}
par(1,2,3,4);
let par1 = function(){
    console.log(arguments[0]);
}
par1("abcdef");

(function(){
    console.log(arguments[0]);
    console.log(arguments[1]);
})(1,2);

//带返回值函数
//函数体内部带return 值(任意类型)
function getname(){
    /* 
    执行代码
    */
   return "张三";
}
console.log(getname());

let getsex = function (){
    /* 
    执行代码
    */
   return "男";
}
    console.log(getsex());

let age = (function(){
    /* 
    可执行代码
    */
   return 18;
})();
console.log(age);

//函数带参数列表+返回值

//变量的生命周期
//全局变量生命周期 从定义开始 --当前网页关闭之后结束
//局部变量的声明周期 从定义开始--当前函数执行完成结束

//变量的声明同名的问题
var data = 10;
function getdata(){
    console.log(data);//考虑声明提前
    var data = 20;
    console.log(data);
}
getdata();

    </script>
</head>
<body>
    
</body>
</html>
相关标签: javascript