书写的三种方式

1. 书写在script标签里面(一般会用到的)

2.书写在js文件里面(推荐)
定义一个js文件(xxx.js)

3. 书写对应的事件属性里面(比较少用)

初体验

1. 目前js的代码,必须写在一个script标签里,script的默认type text/javascript
2. alert('字符串')提示框
3. console.log("hi")
4. document.write("在页面上输出")

注释(注释相当于解释这个句话 这个注释是不会被编译的)

1.单行注释 ctrl + /
2.多行注释 ctrl + shift + a

变量定义(使用var关键词声明)

例:var  number  = a

1.使用var关键字,在内存中开辟一个空间,并给空间命名和给空间赋值
声明变量 : var myname="xxx"
2.多个变量 简写:多个变量用","隔开,
var myname="xxx" , age=20 , sex="男";
3.变量的默认值是 undefined 未定义类型
4.查看js的基本数据类型,使用 typeof
例: console.log(typeof "hi")

js属于弱类型语言

1.可以是任意类型的数据
2.数据类型可以被修改

变量名的书写(见名知意 区分大小写)

1.只能是数字,字母,下划线,$
2.不能是数字开头
3.不能是关键字或保留字
4.严格区分大小写
5.驼峰命名法
小驼峰: 变量,形参,函数
大驼峰: 类型,构造函数
6.语义化,见名思意

7.普通变量首字母小写
常量全大写(const)

js的数据类型

1.string,number,bool,undefined,null,object
2.值类型数据类型 string,number,bool,undefined,null
3.引用类型 object (Array,Function..)
  4.特殊的值 NaN  --> number
   5.特殊的类型: null,undefined

案例:
1). 字符串 String  由一组双引号或单引号组成的
        var str = 'a';
        var str1 = "b";
        console.log(typeof (str));
        console.log(typeof (str1));

2). 数值类型 Number
        var num1 = 100;
        var num2 = 23.4
        console.log(typeof (num2))

3). boolean 布尔类型,它值 (true/false); 真/假
        var isLogin = true; //已经登录
        var isReg = false; //没注册
        console.log(isLogin); //true

4). undefined 未定义类型
防止程序出错,js会隐式设置一个默认的undefined
        var sex;
        console.log(typeof (sex)); //undefined

5). null  空地址
        var a = null;
        var b = null;

console.log(b);
6). 对象类型  Object
    a.对象的写法1
        var person = new Object();
        person.name = "杨超越";
        person.age = 22;
        person.address = "上海"
        console.log(person); //{name: '杨超越', age: 22, address: '上海'}
    b.对象的写法2
        var dog = {
            name: "旺财",
            age: 4,
            address: "湖南"
        };
        console.log(dog); //{name: '旺财', age: 4, address: '湖南'}

元素类型的转换

 var number = 1
    // 数字转换为字符串
    console.log(number.toString());
    // String 转 number
    var str = 123.12
    console.log(Number(str));
    // 转整数
    console.log(parseInt(str));
    // 转小数
    console.log(parseFloat(str));
    // isNaN 是NaN返回true不是返回false(not a number)
    var a = 10
    console.log(isNaN(a)); //false
    var str = 'abc'
    console.log(isNaN(str)); //true
    // 无穷大 无穷小(Infinity)
    //无穷大
    var max = Infinity
    //无穷小
    var min = -Infinity
    // 将字符串转为对应的boolean类型
    //转为boolean类型 非空就是true 空字符串表示false
    var str = 'abc'
    var b = Boolean(str); //false
    var b1 = Boolean('') //true
    console.log(b, b1);
    // 将number转为布尔类型
    var number1 = 10
    //number转布尔 非0和非NaN则为true NaN和0就是false
    console.log(Boolean(number1)) //true
    console.log(Boolean(0)) //false
    console.log(Boolean(NaN)) //false
    // 将undefined和对应的null转为boolean( false)
    var un
    console.log(Boolean(un)) //false
    console.log(Boolean(null)) //false
    // 将boolean类转为number类型( false 0 true 1)
    console.log(Number(true)) //1
    console.log(Number(false)) //0
    // 将对应的undefined和null转为number
    var un
    console.log(Number(un)) //NaN
    console.log(Number(null)) //0
 

运算符和表达式

1.算术运算
+ - * / % ++(自增) --(自减)

2.拼接运算符:+,加号两边只要有一边出现字符串就是拼接

3.赋值运算符+=,-=,/=,*=
4.逻辑运算符:
与 & 找假
或 || 找真
非! 取反
&& || 被称为短路运算符

自增和自减的前置和后置的区别

前置先执行对应的++(--) 再执行对应的代码
后置先执行对应的代码 再执行++(--)

列如:

  //俩个number相加

  console.log(2 + 1); //3
    //一个string和number相加 连接操作 自动转为string 字是黑色的属于字符串
    console.log('123' + 1); //1231
        //boolean类型和null和undefined小于number 自动转为number
        console.log(true+1);//2
        //- * / % 全部会转为number类型进行操作
        console.log('12'-1);//11
        console.log(true-1);//0
        console.log(undefined-1);//NaN 出现NaN计算结果一个是NaN
        console.log(null-1);//-1
        console.log(true*3);//3
        //% 取余 取模
        //大数取余小数 得到的是余数 小数取余大数得到小数
        console.log(6%3);//0
        console.log(7%3);//1
        console.log(4%3);//1
        console.log(3%4);//3
 
 //++ 在原本的基础上+1  -- 在原本的基础上减一
     var i = 1
        //前置(先执行++(--)操作 再进行对应的代码块的执行)和后置 (先执行代码块再进行 ++(--)操作)
        console.log(i++);//1
        console.log(i);//2
        console.log(++i);//3
        console.log(i--);//3
        console.log(i); //2
        console.log(--i);//1
        //计算顺序 先算括号里面的 ++或-- 再进行乘除取余 再进行 + -
        console.log(++i * 10); //20
 
// 赋值运算符+=,-=,/=,*=
        var a = 10
        a+=10 //=a+10
        a/=10 //2
        a*=5 //10
        console.log(a);
 

位运算(转为二进制再进行位的变化运算)

>> 右移 << 左移 ~~ 去掉小数

例如:如何最快从2变成16

  var i = 2
        //位运算 快速从2得到8 二进制满2进1   值1  0
        //2的二进制就是10  ==>   16的二进制就是10000
        //左移后面是进行补零操作 最后一位是多少就是多少 0 + 2^0*1 +2^2*0 +2^3*0 +2^4*1=16     <<3相当于补了3个0
        console.log(2<<3);
 

三元运算符(三目运算符)

  // 表达式(boolean类型表达式)? true的内容 :false的内容
    var a = 1
    var b = 2
    console.log(a < b ? 1: 2); //1
    console.log('123a' / 10 ? 'hello' : 'hi'); //hi )
 

number保留几位小数的方法 toFixed

  var number1 = 3
   var number2 = 10
    //默认的大小16位 整数位也是16位 超出不能显示(可以通过特殊方法解决)
    console.log(number2 / number1); //3.3333333333333335
    //保留小数(方法会优先调用) 转成字符串
    console.log((number2 / number1).toFixed(3));//3.333

JavaScript的入门的更多相关文章

  1. 【转】HTML, CSS和Javascript调试入门

    转 http://www.cnblogs.com/PurpleTide/archive/2011/11/25/2262269.html HTML, CSS和Javascript调试入门 本文介绍一些入 ...

  2. JavaScript快速入门(四)——JavaScript函数

    函数声明 之前说的三种函数声明中(参见JavaScript快速入门(二)——JavaScript变量),使用Function构造函数的声明方法比较少见,我们暂时不提.function func() { ...

  3. 第一百一十九节,JavaScript事件入门

    JavaScript事件入门 学习要点: 1.事件介绍 2.内联模型 3.脚本模型 4.事件处理函数 JavaScript事件是由访问Web页面的用户引起的一系列操作,例如:用户点击.当用户执行某些操 ...

  4. JavaScript简单入门(补充篇)

    本文是对上一篇 JavaScript简单入门 的一些细节补充. 一.全局变量和局部变量 在<script>标签内定义的变量是当前页面中的全局变量.即 <script>标签可以直 ...

  5. Javascript闭包入门(译文)

    前言 总括 :这篇文章使用有效的javascript代码向程序员们解释了闭包,大牛和功能型程序员请自行忽略. 译者 :文章写在2006年,可直到翻译的21小时之前作者还在完善这篇文章,在Stackov ...

  6. 《javascript经典入门》-day02

    <javascript经典入门>-day02 1.使用函数 1.1基本语法 function sayHello() { aler('Hello'); //...其他语句... } #关于函 ...

  7. 《javascript经典入门》-day01

    <javascript经典入门>-day01 1.了解JavaScript 01.浏览器每次加载和显示页面时,都在内存里创建页面及其全部元素的一个内部表示体系,,也就是DOM.在DOM里, ...

  8. Javascript之入门篇(一)

    上一篇学习了什么是JavaScript语言及其作用和特有的特点等,本篇将详细介绍JavaScript一些入门使用方式. 对于初学者来讲,由于JavaScript是嵌入到HTML页面里面的,首先创建一张 ...

  9. JavaScript 基础入门

    JavaScript 基础入门   JavaScript 的组成 JS 由三部分组成,它们分别是:ECMAScript.DOM.BOM. ECMAScript     因为网景开发了JavaScrip ...

  10. JavaScript基本入门02

    目录 JavaScript基础入门 02 条件语句 if 语句 if .. else 语句 switch 结构 循环语句 while 循环 continue 关键字 do...while语句 for ...

随机推荐

  1. 抽象类与接口——JavaSE基础

    抽象类与接口 抽象类 抽象类既包含规范又包含具体实现 抽象类可以包含实现的方法 和 未实现的用abstract修饰的抽象方法 抽象类不可以有实例化(不能使用new实例化),只能通过子类继承,然后对子类 ...

  2. Spark读取elasticsearch数据指南

    最近要在 Spark job 中通过 Spark SQL 的方式读取 Elasticsearch 数据,踩了一些坑,总结于此. 环境说明 Spark job 的编写语言为 Scala,scala-li ...

  3. 13. L1,L2范数

    讲的言简意赅,本人懒,顺手转载过来:https://www.cnblogs.com/lhfhaifeng/p/10671349.html

  4. 腾讯QQ快捷登陆

    腾讯QQ快捷 相关各语言对接qq快捷登录教程 [C#]QQ开放平台(QQ站外登录)_流程和源码示例 j2ee中实现QQ第三方登陆 web实现QQ第三方登录 asp.net网站接入QQ登录 php实现q ...

  5. tensorflow版本的bert模型 GPU的占用率为100%而其利用率为0%

    Notice: 本方法只是解决问题的一种可能,不一定百分百适用,出现这个问题还有很多其他原因,这个可以作为解决的一种尝试!!! 经过检查发现,是由于激活环境的原因 使用 conda activate ...

  6. (1)《QT+OpenGL学习之我见》初始化窗口及三个重要函数 vs+Qt

    本章前言:本章讲如何利用VS和QT来创建一个基本的QOpenGLWidget窗口和有关联的三个核心函数,因为版本更新可能会有大同小异,但基本的不会有变换,有了QT的帮助,我们不需要下载opengL.g ...

  7. js 表面学习 - 认识结构

    JavaScript 语句由以下构成: 值.运算符.表达式.关键词和注释. 这条语句告诉浏览器在 id="demo" 的 HTML 元素中输出 "Hello Kitty. ...

  8. Unity-A-Star寻路算法

    最短路径 将地图存成二维数组,通过行列查找: 每一步都查找周围四个方向,或者八方向的所有点,放入开表: 是否边缘 是否障碍 是否已经在确定的路线中 计算每个方向上路径消耗,一般斜着走消耗小,收益大: ...

  9. SQL Server数据库 备份A库,然后删除A库,再还原A库,此时数据库一直显示“正在还原”的解决方法

    SQL Server数据库 备份A库,然后删除A库,再还原A库,此时数据库一直显示"正在还原"的解决方法: A库一直显示"正在还原". 在这种状态下,由于未提交 ...

  10. Min-max 容斥与 kth 容斥

    期望的线性性: \[E(x+y)=E(x)+E(y) \] 证明: \[E(x+y)=\sum_i \sum_j(i+j)*P(i=x,j=y) \] \[=\sum_i\sum_ji*P(i=x,j ...