美文网首页
(快速入门)基础语法+数据类型和变量

(快速入门)基础语法+数据类型和变量

作者: 云木杉 | 来源:发表于2018-09-13 10:13 被阅读0次

入门

  • JavaScript代码通常放到<head>标签中
  • 单独做.js文件,通过<script src="..."></scipt>引入

如何运行JavaScript

  • 要让浏览器运行JavaScript,必须先有一个html页面,html页面中引入JavaScript,然后,让浏览器加载该HTML页面,就可以执行JavaScript代码。

基础语法

  • var用来声明变量,每个语句以;结束(不强制要求)
  • {...}用来编写语句代码块,注意花括号{...}内的语句具有缩进,通常4个空格。
  • 注释与Java一致 单行注释/多行注释
var x = 1; // 完整的赋值语句
// 代码块
if (2 > 1) {
    x = 1;
    y = 2;
    z = 3;
}

数据类型

  • Number描述数字,不区分整数与浮点数(十六进制使用0x前缀和0-9,a-f表示,它们和十进制的数值完全一样)
  • Number可以做四则运算,规则与数学一致
1 + 2; // 3
(1 + 2) * 5 / 2; // 7.5
2 / 0; // Infinity
0 / 0; // NaN
10 % 3; // 1
10.5 % 3; // 1.5
10%3 = 1 //  %是求余运算 
  • 字符串是以单引号或者双引号括起来的任意文本 同步Java字符串
  • 布尔值 一个布尔值只有true false两种值 (! 非运算)
    Javascript允许对任意数据类型做比较
    false == 0 // true
    false === 0 // false
 // &&运算是与运算,只有所有都为true,&&运算结果才是true:

true && true; // 这个&&语句计算结果为true
true && false; // 这个&&语句计算结果为false
false && true && false; // 这个&&语句计算结果为false
//  第一种 == 会自动转换数据类型,再比较 而=== 不会转换数据类型(全等=数值+类型),数据类型不一致的话,返回false(NaN与其他值都不相等,包括自己 NaN == NaN//false)

// ||运算是或运算,只要其中有一个为true,||运算结果就是true:

false || false; // 这个||语句计算结果为false
true || false; // 这个||语句计算结果为true
false || true || false; // 这个||语句计算结果为true

// !运算是非运算,它是一个单目运算符,把true变成false,false变成true:

! true; // 结果为false
! false; // 结果为true
! (2 > 5); // 结果为true

  • null (空的意思 同Java) undefined 未定义的意思 事实表明,这并没有什么卵用

  • 数组 Javascript的数组可以包含任何数据类型,用[ ]表示,元素之间用,分隔
    创建数组的方式:[1,2,"hello",null,true] 或者 new Array(1,2,3)
    数组的元素通过索引来获取 索引初始值为0

var arr = [1, 2, 3.14, 'Hello', null, true];
arr[0]; // 返回索引为0的元素,即1
arr[5]; // 返回索引为5的元素,即true
arr[6]; // 索引超出了范围,返回undefined

  • 对象 Javasricpt对象是由一组 键值组成的无序集合
 var person = {name : "binbin",age : 20}; 

// 对象的键都是字符串类型,值可以是任意类型
// 这种变量本身类型不固定的语言称之为动态语言,与之对应的是静态语言
var value = {
            name : "diudiu",
            age : 10
         };
// 获取一个对象的属性,我们用 对象变量.属性名 的方式
value.sex;
value.sex = 0;
delete value.age;
console.log(value);

// 判断一个属性是否存在(可以获取到继承的(Object))
"name" in value;
// 判断本身是否还有这个属性
value.hasOwnProperty("sex");
//删除属性
delete value.age;

### strict模式
* JavaScript设计之初,并不强制要求用var申明变量,如果一个变量没有通过var申明就被使用,那么该变量就自动被申明为全局变量:
~~~
i = 10;// i现在是全局变量
~~~
* 在strict模式下运行的JavaScript代码,强制通过var申明变量,未使用var申明变量就使用的,将导致运行错误。
~~~
'use strict';
~~~

### 条件判断
* 同Java同步(JavaScript)把 null,undefined,0,Nan 和空字符''视为false,其他一概视为true

## 循环
* for循环同步Java

### 关于集合
~~~
  var m = new Map();
        m.set(name, "lonawang");
        m.has(name);
        m.delete(name);

        console.log(m.get(name));


        var s = new Set();


        var o = [1, 2, 3];

        for (var e of o) {

            console.log(e)

        }

        var mMap = new Map([[1, 'x'], [2, 'y'], [3, 'z']]);

        // mMap.forEach(function (key2, value2, map) {
        //         console.log(value2 + " ---  " + key2 + "  ---  " + map.values())
        //     }
        // );


        var a = ['A', 'B', 'C'];

        a.forEach(function (element) {
            // element: 指向当前元素的值
            // index: 指向当前索引
            // array: 指向Array对象本身
            console.log(element);
        });


~~~


 
### 数组
* var arr = [1,2,3];
  arr.push(4);  // 现在arr的值为 [1,2,3,4]
  接受一个或多个参数,并把它“推”入到数组的末尾。
* .pop() 函数用来“抛出”一个数组末尾的值。我们可以把这个“抛出”的值赋给一个变量存储起来。
  var oneDown = [1, 4, 6].pop();  //现在 oneDown 的值为 6 ,数组变成了 [1, 4]。

* shift()  它的工作原理就像 .pop(),但它移除的是第一个元素

* unshift(移入)一个元素到数组的头部
  用起来就像 .push() 函数一样, 但不是在数组的末尾添加元素,而是在数组的头部添加元素。

  var myArray = [["John", 23], ["dog", 3]];
  myArray.unshift(["Paul", 35]);

相关文章

网友评论

      本文标题:(快速入门)基础语法+数据类型和变量

      本文链接:https://www.haomeiwen.com/subject/jhdbgftx.html