JavaScript入门第一天,js教程,js变量, 数据类型,数据转换,隐式转换

今天在整理笔记,这是我重新整理的JavaScript的笔记。我觉得学什么东西,就应该认真去学,努力去学!

java学习笔记

一、js有三种方式来使用

  •  1. 首先第一种:写在标签里面
    
  •  2. 其次第二种:写在页面script标签里面
    
  •  3. 最后第三种:写在单独的一个***.js文件里
    

演示:

  •  标签里的js:
     + 需要事件去驱动;
     + <a href="javascript:alert('hello world')">点击</a>
     + 写在行内会通过点击激活操作执行
    
  •  内联式写法:
    
  • 写在script双标签内,一般写在body里,head之适合引入,在head内不适合写js代码;
    
  • 代码写在了script标签里面会立即执行
    
  •  外链式写法
    
  • 在外部创建一个独立的***.js文件;
    
  • 用script双标签进行引入
    
  • 用外链式引入和内嵌式不能混用,否则会优先执行外链的
    
  • 引入的代码也是立即执行
    

变量

定义

  •  存放数据的容器
    

命名规则

  •  首字母只能是$, _, 字母
    
  •  由数字,字母,下划线以及$符号来命名
    
  •  + 不能由字母开头*
    
  •  + 最好就是见名知意
    

语法规则

  •  关键字 : 代表特殊含义的运算
    
  •  var 变量
    
  •  + 通常叫做声明
    
  •  + 关键字不需要运算,因为其本身就是运算规则
    
  •  + var $a1;
    
  •  + var _a1;
    
  •  + var a_1;
    
  •  + str = "Hello World";
    

赋值

  •  利用赋值符号来给变量赋值
    
  •  var a1 = 5;
    
  •  var a2 = "nihao"
    

数据类型

  •  物种简单数据类型:
    
  •  + 1.字符串       string;
    
  •  + 2.数字         number;
    
  •  + 3.布尔值       boolean;
    
  •  + 4.undefined   undefined;
    
  •  + 5.null        null
    
  •  关键字 typeof 能查看数据属于什么类型
    
  •  + typeof:
    
  •  + var bool = false;
    
  •  + var str = "Hello World"; // expected output: 
    
  •  + var res1 = typeof(bool); // expected output: Boolean
    
  •  + var res2 = typeof str;   // expected output: String
    

数据类型的转换

为什么要数据类型转换

  •  JavaScript 的变量之中可以存储任意类型的数据;
    
  •  其他类型转换位数字的规则:
    
  •  + 通用转换方式:
    
  •      + 通用转换方式:
    
  •   + API: Number(被转换的数据类型);
    
  •   + JavaScript 所有的API都需要区分大小写
    
  •  + 1.纯数字字符串:
    
  •   + var str1 = "123456";
    
  •   + var num1 = Number(str1); console.log(str1, num1); //expected output : "123456" 123456
    
  •  + 2.数字字母混淆的字符串
    
  •   + var str2 = "123abc123";
    
  •   + var num2 = Number(str2); console.log(str2, num2); //expected output : "123abc123" NaN
    
  •  + 3.NaN的特征:
    
  •   + 1).NaN 转化为boolean ==> flase; 
    
  •   + 2).NaN 不等于任何数值包括NaN; 
    
  •   + 3).NaN 判断需要特殊的API : isNaN;
    
  •  + parseInt() / parseFloat()转换
    
  •   + parse 的转换不是整体进行字符串的类型转化,而是逐个字符的进行类型抓换
    
  •   + 如果字符串的开头字符是非数字,返回结果为NaN
    
  •   + 若是数字开头,转换到字母就不认识了返回数字
    
  •  + parseInt 的高级用法 :
    
  •   + 进制转换  parseInt("不同进制的数值", 当前字符之中的数值为多少进制 | Number);
    
  •   + var num3 = parseInt("0x68FA", 16); console.log(num3); // expected output: 26874
    
  •  + 布尔转数字
    
  •   + false => 0;
    
  •   + true  => 1;
    
  •  + undefined 转数字
    
  •   + NaN
    
  •  + 基本类型转换的应用 => 数字常用计算 : 
    
  •  + 特殊: +
    
  •   + 俩个含义: 一个是数字相加, 
    
  •   +           一个是连接
    
  •   + var str3 = "10";
    
  •   + var str4 = "11";
    
  •   + var str5 = str3 + str4; console.log(str5); // expected output : 1011
    
  •   + var str6 = 10;
    
  •   + var str7 = "20"; 
    
  •   + var str8 = str6 + str7; console.log(str8); // expected output : 1020
    
  •  + 结论:
    
  •   + 1.先判断 + 运算, 左右两侧数值不一致
    
  •    + 数字 + 字符串
    
  •    + 优先把数字转换为字符串
    
  •    + 100  ==>  "100"
    
  •    + 进行同类运算
    
  •    + 如果运算符俩侧没有字符串,优先转换为数字类型进行计算
    
  •    + var bool2 = true;
    
  •    + var num3 = 20;
    
  •    + var num4 = bool2 + num3; console.log(num4); // expected output : 21;
    
  •    + * / - % 都是优先转换为数字才运算
    
  •    + var str9 = "5";
    
  •    + var str10 = "10";
    
  •    + console.log(str9  - str10); // expected output : -5
    
  •    + console.log(str9  * str10); // expected output : 50
    
  •    + console.log(str9  / str10); // expected output : 0.5
    
  •    + console.log(str9  % str10); // expected output : 5
    
  •    + NaN 和任何数字计算结果都是 NaN 
    
  •    + var str11 = "5hello";
    
  •    + var str12 = "10";
    
  •    + var str13 = str11 * str12; console.log(str13) // excepted output : NaN
    
  •  + string 字符串
    
  •   + String() 转换
    
  •    + 1. 全部转换为字符串
    
  •   + toString() 转换
    
  •    + 1.变量.toString()取出
    
  •    + 2. js中 undefined 和null不允许去除运算,否则会
    
  •    + 3. 隐式数据类型转换
    
  •     + var bool4 = true;
    
  •     + var str15 = boo3 + ""; console.log(str15); // expcepted output: true
    
  •    + 4. toString()进制转换
    
  •     + var num15 = 99;
    
  •     + var num16 = num15.toString(16); console.log(num16); // excepted output : 63
    
  •     + toString 转换进制的范围在 2 ~ 36 进制; 如果不在这个范围之内会报出 RangError ;
    
  •    + 5.false : 
    
  •     + 除了 0 和 NaN 会转换为False 其他的值都转换为true;
    

最后推荐学习前端一本书:

- javascript 高级程序设计  (第四版)

大家想和我一起学前端,可以关注我,我每天都会记录我学习的心得。

虽然我确实不喜欢前端,但是为了工作,我还是选择了前端,这就是我老家长辈常说的一句话,你以后干的工作可能是你不喜欢的工作。

大家都是以后为了生活,所以,加油吧,学习的人, 加油吧,正在工作的人,希望通过努力,你变得优秀,我也能变得更加优秀。

加油 !!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值