java Script 1

JavaScript变量

  1. 定义变量方式

    <script>
        a = "123";//隐式定义变量  隐式定义的变量为全局变量
        var a;//显式定义变量
        var a,b,c;//可以一次定义多个变量  区分大小写
    </script>
  2.  自动类型转换
    <script>
    var a=123  //a为数字
    var a="123"  //a为字符
    var a=123asd  //报错 a什么都不是
    //在js中+号可以是加法也可以是拼接字符串 数字之间用+为加法  有字符串参与的+为字符串
    拼接
    </script>
  3.  强制类型转换
    • toString():  将布尔值或数值转换为字符串 
    • parselnt():   将字符串或布尔值转换成整数
    • parseFloat():将字符串或布尔值转换成浮点数
      <script>
          a = "1.23";
          var b=a+2;//b=1.232因为是字符串拼接
          var c=parseFloat(a)+2;//c=3.23 因为a呗转换成了浮点数  两个数相加
          //强制转换成数字 将字符串中第一个非数字之前的数字转换成数字  如果是全部为字符或为布尔值,null,undefined等转换成NAN
      </script>
  4.  变量作用域       根据变量定义的范围,变量分为全局变量和局部变量:

    全局变量:不在所有函数里定义的变量和在函数里不使用var(隐式定义)定义的变量,就是全局变量

    局部变量:在函数里定义的、且使用var(显式定义)定义的变量,是局部变量

    <script>
    var test = "全局变量";//包括在HTML事件中
    function myFun() {
        age = 20;//全局变量
        var male = "局部变量";
        var test="在函数中定义与全局变量相同的局部变量,该变量在函数中使用时为局部变量的值,在外面则是全局变量的值";
    }//在js中默认没有块范围在{}中定义的变量与外面相通
    myFun();
    alert(test + age);
    alert(male);
    </script>

  5.  变量提升机制
    <sript>
    var a = 10
    function test() {
        console.log(a) //在该语句中a的值为undefined
        if (0) {
            var a = 20//在函数中默认将定义变量语句最先执行,该句实际执行a=20,而var a
    在函数开始就执行
        }
    }
    test()
    </script>

  6. let关键字

    • let定义的变量有块作用域

    • let定义的变量不会强加给window对象

    • let定义的变量不会提前转载(提升)

  7. const常量

    使用const定义常量:要求必须在定义时初始化值,并且之后不可以修改常量的值,

    约定俗称的规范:常量一般都是大写命名,如果是多个单词,中间使用_连接

JavaScript基本数据类型

  1. 基本数据类型

    • 数值类型:包含整数或浮点数。

    • 布尔类型:只有true或false两个值。

    • 字符串类型:字符串变量必须用引号括起来,引号可以是单引号,也可以是双引号。

    • undefined类型:专门用来确定一个已经创建但是没有初值的变量。

    • null 类型:用于表明某个变量的值为空。 

  2. 数值类型 
<script>
        var a = 012;数值直接量不要以0开头 因为在js中支持十六(0x开头)和八进制(0开头)
        console.log(a);
        var a1 = new Number("12");//面向对象创建数据类型
        console.log(a1);
        var a2 = 0x12;
        console.log(a2);
        var b = 1E3;//字面量创建数值类型
        console.log(b);
        var c = .34E-3;//科学计数法使用51.2E2来表示,其中E不区分大小写
        console.log(c);
        var d = .34e3;//如果包含小数,则小数点前面的0可以省略
        console.log(d);
</script>

 

         数据类型里面的两个特殊值 :Infinity(正无穷大) -Infinity(负无穷大)   两个无穷大或无穷小总是相等 虽然真实值不相等 但是无穷后就想等了

        NaN非数 与任何数值都不想等  可以通过isNaN()函数来判断变量是否为NaN

        js中算术运算运行除数为0,除数和被除数同时为0结果为NaN,正数除0为Infinity,负数除0的结果为-Infinity

        浮点数精度丢失,所以比较浮点数需要用差值法

var a = 0.3333;
var b = a * 5;
console.log(b);
console.log(b - 1.6665)
console.log(Math.abs(b - 1.6665));
//差值比较法
if (Math.abs(b - 1.6665) < 0.00000000001) {
    console.log("b等于1.6665");
} else {
    console.log("b不等于1.6665");
}

字符串类型

  1. 字符串必须用引号引起来""  '' 都可以
    1. java与js中字符串的区别:js''中可以写字符串,而java''只能写一个字符;比较两个字符串相等js用==就可以,java用equals()方法
  2.  JavaScript提供字符串相关的方法和属性:

    1. String():类似于面向对象语言中的构造器,使用该方法可以构建一个字符串。
    2. charAt():获取字符串特定索引处的字符。
    3. charCodeAt():返回字符串中特定索引处的字符所对应的Unicode值。
    4. length:属性,直接返回字符串长度。JavaScript中的中文字符算一个字符。
    5. toUpperCase():将字符串的所有字母转换成大写字母。
    6. toLowerCase():将字符串的所有字母转换成小写字母。
    7. fromCharCode():静态方法,直接通过String类调用该方法,将一系列Unicode值转换成字符串。
    8. indexOf():返回字符串中特定字符串第一次出现的位置。
    9. lastlndexOf():返回字符串中特定字符串最后一次出现的位置。
    10. substring():返回字符串的某个子串。
    11. slice():返回字符串的某个子串,功能比 substring 更强大,支持负数参数。
    12. match():使用正则表达式搜索目标子字符串。
    13. search():使用正则表达式搜索目标子字符串。
    14. concat():用于将多个字符串拼加成一个字符串。
    15. split():将某个字符串分隔成多个字符串,可以指定分隔符。
    16. replace():将字符串中某个子串以特定字符串替代。
<script>
        var  text  =  "asdfghASDFGH";    
        var  a  =  text.charAt(1);  //获得第二个字符
            
        var  b  =  text.charCodeAt(1);  //获得第二个字符对应的unicode值
            
        var  c  =  text.length;  //获得整个字符串的长度
            
        var  d  =  text.toUpperCase();  //转化成大写
        var  e  =  text.toLowerCase(); //转化成小写
            
        var  f  =  String.fromCharCode(98, 100);  //String构建字符串,获得unicode
值为98和100的字符       
        console.log(text);    
        console.log(a,  b,  c,  d,  e, f);
    </script>

 

         3.indexOf()和lastIndexOf()查找方法:

0

var text = "vclsdgarlsd";
var d = text.indexOf("l"); //返回l子串第一次出现的位置,如果没有就返回-1
var f = text.indexOf("l", 6); //跳过6个字符后,返回l子串第一次出现的位置,如果没有就返回-1
var g = text.lastIndexOf("l"); //返回l子串第一次出现的位置,如果没有就返回-1
console.log(d, f, g) 

       

         4.match()和search()查找方法

0

 var text = "ag3ou7l3kjs4d3h1ls5jd";
        var a = text.match(/\d/g); //寻找所有的数字,最终组成数组,其中g表示全局匹配
        var b = text.search(/\d/); //寻找第一次数字的位置
        console.log(b);
        console.log(a);

        

        5.substring()和slice()截取方法:

0

var text = "ag3ou7lsdfds";
var a = text.substring(3, 6); //从原字符串中截取索引处3、4、5三个字符 即ou7
var b = text.slice(3, -1); //从原字符串中截取索引是3的字符开始到倒数第一个字符之间的字符 即ou7lsdfd
console.log(a);
console.log(b);

<script>
        var  text  =  "adsgsdhtdsfge";
        var  text2  =  "hxl";
        var  text4  =  "hxl111";
        var  text3  =  text.concat(text2,  text4);  //连接多个字符串,concat(...)
        console.log(text3);

        //split        
        var  text  =  "sdg7rhehd7htds";
        var  arr  =  text.split("7");  //以7来把字符串分隔成组数
        console.log(arr);

        //replace
        var  text  =  "sad7sdv7efds";
        var  arr  =  text.replace(/7/g,  "qcby");  //把所有的7换成qcby
        console.log(arr);
    </script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值