JavaScript组成 及核心语法

409 阅读2分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第13天,点击查看活动详情

一。 什么是JavaScript :

JavaScript是一种基于对象和事件驱动的脚本语言

1。JavaScript特点

交互、脚本语言、解释性语言,边执行边解释

2。JavaScript组成

①。ecmascript(规范)

ECMAScript是一种语法标准 语法、变量和数据类型、运算符、逻辑控制语句、关键字、保留字、对象 编码遵循ECMAScript标准

②。bom(浏览器对象)

BOM:Browser Object Model(浏览器对象模型) 提供了独立于内容与浏览器窗口进行交互的对象

③。dom(元素对象)

DOM:Document Object Model(文档对象模型) 是HTML文档对象模型(HTML DOM)定义的一套标准方法,用来访问和操纵HTML文档

  1. script>…< /script>可以包含在文档中的任何地方, ★只要保证这些代码在被使用前已读取并加载到内存即可

    ①。 加入样式*/ document.write('

    今天天气很好

    ')

4.png 1.png

②。外部引入式

23.png

③。 直接在html中使用js

  ★使用按钮点击 执行document.write 会把页面上其他的内容覆盖
 <input type="button" value="点我看看      
 onclick="javascript:document.write('什么也没有')">
 
   alert('输入弹出的内容') 弹出框 
 <input type="button" value="点开" onclick="javascript:alert('欢迎光临')">

4.png 4.js的核心语法:

①。变量

  先声明变量再赋值  声明变量要使用关键字var 
   var width;                           
 width = 100;                            
  alert(width);  

2.png

  同时声明和赋值变量 
 var width = 100;                
 document.write(width

45.png

 同时声明和赋值,只有最后一个可以被赋值,前面的变量为初始值undefinedvar  
 <script>
   var  width,height=100;
   document.write(width)
 </script>

<script>
   var  width,height=100;
   document.write(height)
</script>

6.png

 不声明直接赋值  ★ 会把width变量变成全局变量  
  <script>
       width=100;
       document.write(width);
 </script>

②。 数据类型

undefined
变量age没有初始值,将被赋予undefined

 <script>
    var age;
      document.write(typeof age);
 </script>

7.png

null 表示一个空值,与undefined值相等
typeof null ==> object(历史遗留问题) ==表示比较值是否相等

  <script>
    var age = null;
    document.write(age);
</script>


<script>
    var age = null;
    document.write(typeof null);
</script>

9.png

number 数字类型

  <script>
    var score1 = 90;
    var score2 = 88.6;
    document.write(typeof score1)
   document.write(typeof score2)
  </script>

10.png

bollean 布尔型:true和false

  <script>
    let score1 = 1;
    let score2 = 2;
    document.write(score1==score2);
  </script>

12.png

 <script>
    let score1 = 2;
    let score2 = 2;
    document.write(score1==score2);
</script>

13.png

 <script>
    var flag = true;
    var flag2 = false;
document.write( typeof(flag2) )
</script>

2.png string 字符串类型 被引号(单引号或双引号)括起来的文本

<script>
    var string1 = 'abc'
    var string2 = 'def'
    document.write(typeof string1)
</script>

<script>
    var string1 = 'abc'
    var string2 = 'def'
    document.write(typeof string2)
</script>

15.png

es6新增了一个类型 symbol 一个独一无二的数(不和任何数相等 除非是他自己)

<script>
    let a = Symbol(123);
    let b = Symbol(123);
    document.write(a == b)
</script>

16.png

<script>
    let a = Symbol(123);
    let b = Symbol(123);
    document.write(a == a)
</script>

17.png

object 对象类型

 <script>
    var obj={};
    document.write(typeof obj)
</script>

18.png

练习一

   <script>
     var width,height=100,name="summer"
     document.write('width:'+typeof(width)+'<br>')
     document.write('height:'+typeof(height)+'<br>')
     document.write('name:'+typeof(name)+'<br>')
     document.write('true:'+typeof(true)+'<br>')
     document.write('null:'+typeof(null)+'<br>')
     document.write('undefined:'+typeof(undefined)+'<br>')
   </script>

3.png

③。运算符号

两个都是数字型

 <script>
   var num1=2;
   var num2=3;
   document.write(num1+num2);
 </script>
 
 

5.png 一个数是数字类型 另外一个数是字符串类型 这种情况相加 +号 代表拼接,num1会进行隐式数据类型转换 转换成字符串类型 和字符串'2' 进行拼接

<script>
   var num1='2';
   var num2=3;
  document.write(num1+num2);
</script>

除了加号之外,其他算法都是正常运算




 <script>
    var num1 = 5;
    num1++;
    document.write(num1)
</script>
  等同于   num1 = num1 + 1; 计算顺序是从右到左

7.png

<script>
    var num1 = 6;
   var num2= num1++;
    document.write(num2)
</script>
是num1本身

8.png

<script>
    var num1 = 6;
   var num2= ++num1;
    document.write(num2)
</script>
等同于 ★ 先+1,再赋值

9.png

 <script>
    var num1 = 6;
  num1--
    document.write(num1)
</script>

10.png

<script>
    var num1 = 6;
    num2 = num1--
    document.write(num2)
</script>
等于本身

11.png

 <script>
    var num1 = 6;
   var num2= --num1;
    document.write(num2)
</script>
 先减1再赋值

123.png

练习二。

<script>
    var x=50;
    document.write('x的值为:'+x+'<br>')
    var y=x+10;
    document.write('y的值为:'+y+'<br>')
    var z=x-8;
    document.write('z的值为:'+z+'<br>')
    var m=x*5;
    document.write('m的值为:'+m+'<br>')
    var n=x/6;
    document.write('n的值为:'+n+'<br>')
    var k=x%6;
    document.write('k的值为:'+k+'<br>')
    var i=10;
    i++;
    document.write('i的值为:'+i+'<br>')
    var j=10;
    j--;
    document.write('j的值为:'+j+'<br>')
</script>

1234.png