java script基础入门·2

java script基础入门·2,第1张

java script基础入门2

方法声明

<script>
   function arr(a,b) {
       return a+b;
   }
   let sum=arr(11,12);
   window.document.writeln(sum);
// =========================================== 
//注意调用方法的在代码中的位置
   let sum1=function(arr){
      window.document.writeln('吃'+arr)
   }
   sum1('苹果');

</script> 

方法立即执行
在开头使用! + - 的运算符合,最后()的方法只能执行一次
使用()括号包起来,推荐使用,没有返回值参与运算

<script>
//使用! +  - 的运算符合只能执行一次
    ! function arr() {
       window.document.writeln('更何况');
   }();
//   arr();调用无效,只能执行一次
// 使用()括号包起来,推荐使用,没有返回值参与运算
    (function arr01() {
       window.document.writeln('更何况');
   })();
//    arr01();一样调用无效,只能执行一次
 	(function arr02() {
       window.document.writeln('更何况');
   }());
// arr02()一样调用无效,只能执行一次
</script> 
函数

函数声明
Function是JavaScript提供的一种引用类型,通过Function类型创建Function对象。
在JavaScript中,函数也是以对象的形式存在的,每个函数都是一个Function对象。

// 函数表达式 函数声明
    function fun01() {
        document.writeln('函数表达式');
    }
    // 函数调用
    fun01();
    //-------------------------------------------------
     function fun1(par) {
        document.writeln('函数表达式'+ par);
    }
    // 函数调用
    fun01('可传参');

函数表达式

// 声明式函数
    let fun02 = function () {
        document.writeln('声明式函数');
    };
    //调用函数
    fun02();
    //-----------------------------------------------
      let fun2 = function (msg) {
        document.writeln('声明式函数'+msg);
    };
    //调用函数
    fun02('参数');

箭头函数
将原函数的“function”关键字和函数名都删掉,并使用“=>”连接参数列表和函数体。

 // 箭头函数
    // 箭头函数中的this指的是函数的绑定者
    // 而函数表达式或者声明式函数中的this则为函数的执行者
     let fun03 = () => {
        document.writeln('箭头函数
'
); }; fun03(''); //------------------------------------------------------- let fun3 = (msg) => { document.writeln('箭头函数
'
+ msg); }; fun04('传参');

函数的返回值:
1. 可以使用return 来设置函数返回值
语法:
return 值
return 后的值将会作为函数的执行结果,
可以定义一个变量来接收该结果
如果return语句后不跟任何值就相当于返回一个undefined,
如果函数中不写return, 则也会返回undefined
return后可以跟任意类型的值

 function fun07(slogan) {
        return 'slogan >>> ' + slogan;
    }
    let slogan01 = fun07('我爱你中国');
    document.writeln(slogan01 + '
'
);
 let fun08 = function (slogan) {
        return 'slogan >>> ' + slogan;
    }
    let slogan02 = fun08('亲爱的母亲');
    document.writeln(slogan02 + '
'
);
  let fun09 = (slogan) => {
        return 'slogan >>> ' + slogan;
    }
    let slogan03 = fun09('桃李不言下自成蹊');
    document.writeln(slogan03 + '
'
);

可变参数
在定义方法时,在最后一个形参前加上三点 …,就表示该形参可以接受多个参数值,多个参数值被当成数组传入。
可变参数只能作为函数的最后一个参数,但其前面可以有也可以没有任何其他参数

由于可变参数必须是最后一个参数,所以一个函数最多只能有一个可变参数

Js的可变参数,会被编译器转型为一个数组

// 可变参数 注意 可变参数只能是参数列表的最后一个形参
    function fun12(...args) {
        console.log(args);
    }
    fun12('java', 'python', 'scala');
    function fun13(param, ...args) {
        console.log('param >>>' + param);
        console.log(args);
    }
    fun13('java', 'python', 'scala');
作用域

局部变量
变量在函数内声明,变量为局部变量,具有局部作用域。
局部变量:只能在函数内部访问。


// 此处不能调用 carName 变量
function myFunction() {
    var carName = "Volvo";
    let carName = "Volvo";
    // 函数内可调用 carName 变量
}

全局变量
变量在函数外定义,即为全局变量 var。
全局变量有 全局作用域: 网页中所有脚本和函数均可使用。
如果变量在函数内没有声明(没有使用 var 关键字),当声明变量 没有使用 let 或 var 修饰的时候 默认隐含是 var修饰该变量,该变量为全局变量。

//全局变量
var carName = " Volvo";
 
// 此处可调用 carName 变量
function myFunction() {
    // 函数内可调用 carName 变量
}

// 当声明变量 没有使用 let 或 var 修饰的时候 默认隐含是 var修饰该变量
//没有使用 var 关键字,该变量为全局变量
function myFunction() {
    carName = "Volvo";
}

类变量与私有属性

<script>
    class Person {
        static slogan = '桃李不言下自成蹊';
        // 私有属性
        #food = '核桃';
        #flower;
        // 公有属性
        nickname = '李昊哲';
        eat(food) {
            console.log(this.nickname + '吃' + this.#food);
        }
        set flower(flower){
            console.log('set');
            this.#flower = flower;
        }
        get flower(){
            console.log('get');
            return this.#flower;
        }
    }
    console.log(Person.slogan);
    let person = new Person();
    console.log(person);
    // 李昊哲吃核桃
    person.eat();
    person.nickname = '大宝子';
    person.food = '芒果';
    // 李昊哲吃核桃
    person.eat();
    console.log(person);
    // 调用set方法为私有属性赋值
    person.flower = '牡丹';
    // 调用get方法获取私有属性的值
    console.log(person.flower);
</script>
解构赋值

从数组中解构

<script>
    // 1、从数组中解构
    const F4 = ['小沈阳', '刘能', '赵四', '宋小包'];
    // let shen = F4[0];
    // let liu = F4[1];
    // let zhao = F4[2];
    // let song = F4[3];
    let [shen, liu, zhao, song] = F4;
    window.console.log(shen);
    window.console.log(liu);
    window.console.log(zhao);
    window.console.log(song);
    </script>

从对象中解构

// 2、从对象中解构
    const person = {
        name: '姓名',
        age: 39,
        eat: function () {
            window.console.log('吃吃吃');
        }
    }

    console.log(person.name);
    console.log(person.age);
    person.eat();
    let { name, age, eat } = person;
    console.log(name);
    console.log(age);
    eat();

方法赋值

 // 方法赋值
    let server_url = {
        protocol: 'http://',
        domain: '192.168.1.106',
        port: 2022,
        context: ''
    };
    function getServer01(server_url) {
        if (server_url.context == '') {
            return server_url.protocol + server_url.domain + ":" + server_url.port;
        } else {
            return server_url.protocol + server_url.domain + ":" + server_url.port + "/" + server_url.context;
        }
    }
    console.log(getServer01(server_url));

    function getServer02(protocol, domain, port, context) {
        if (context == '') {
            return protocol + domain + ":" + port;
        } else {
            return protocol + domain + ":" + port + "/" + context;
        }
    }

字符串拼接

let love01 = '我爱你中国';
    let love02 = '亲爱的母亲';
// 使用加号 实现 字符串拼接
    let love03 = love01 + love02;
    console.log(love03);
// 使用字符串魔板 实现 字符串拼接
    let love04 = `${love01},${love02}`;
    console.log(love04);
// 使用concat方法 实现 字符串拼接
    let love = love01.concat(love02);
    console.log(love);

字符串查找
字符串与下标互相查找
charAt,indexOf,lastIndexOf,search,replace,replaceAll

 <script>
    let x = "桃李不言下自成蹊";
    let y = "桃李不言下自成蹊";
   
    let slogan = x+y;
    console.log(slogan);
    // 根据字符串下标 获取字符串某下标位置上的字符
    console.log(slogan.charAt(5));
    // 字符串中第一次出现的字符串的下标
    console.log(slogan.indexOf('成'));
    // 字符串中最后一次出现的字符串的下标
    console.log(slogan.lastIndexOf('不'));
    // 搜索 查找 返回 index
    console.log(slogan.search('不'));
    // 替换 第一次出现
    // console.log(slogan.replace('不','love'));
    // 替换 所有
    console.log(slogan.replaceAll('不', 'love'));

</script>

数组,字符串转换
JOIN 用于把来自两个或多个表的行结合起来,基于这些表之间的共同字段。
split() 方法用于把一个字符串分割成字符串数组。

 let times = [1983, 11, 22];
    let date = times.join('-');
    // 1983-11-22
    console.log(date);
    //将字符串其分割成数组
    let array = date.split('-');
    console.log(array);

字符串截取
起始值 结束值 slice
起始值 截取长度 substr

// 桃李不言下自成蹊 起始值 结束值 前包后不包
	console.log(slogan.slice(1,5));
//桃李不言下自成蹊 起始值 结束值 前包后不包
    console.log(slogan.substring(1,5));
// 桃李不言下自成蹊 起始值 截取长度
    console.log(slogan.substr(2,5));
    
结果:// 李不言下
    // 李不言下
    // 不言下自成

number 与 string 互转
toString() 转字符串
parseInt 数值

 // number 与 string 互转
    let a = 10;
    // number
    console.log(typeof(a));
    // string
    console.log(typeof(a.toString()));
    // object
    console.log(typeof(new String(a)));
    // int
    console.log(typeof(parseInt('20')));

字符串处理空格
replaceAll替换

// 字符串处理空格
    let dahai = ' 大海 大海 ';
    // 7
    console.log(dahai.length);
    // 5 收尾去空格
    console.log(dahai.trim().length);
    // 4 利用字符串 替换 实现 去除字符串中所有的空格
    console.log(dahai.replaceAll(" ","").length);

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1297358.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-10
下一篇 2022-06-10

发表评论

登录后才能评论

评论列表(0条)

保存