zoukankan      html  css  js  c++  java
  • 小白初识js

    ## 什么是js?js的来源
    1.JavaScript是一种专为与网页交互而设计的客户端脚本语言。

    2.最初是为了实现表单验证

    3.JavaScript能完成的功能:
    - 用户交互(表单验证)
    - 网页特效(漂浮的广告)
    - 用户记住账户名密码
    - 网页游戏(围住神经猫)
    - .....
    4.JavaScript组成
    ECMAScript + BOM + DOM
    ECMAScript:是一种由Ecma国际(前身为欧洲计算机制造商协会,英文名称是European Computer Manufacturers Association)通过ECMA-262标准化的脚本程序设计语言。这种语言在万维网上应用广泛,它往往被称为JavaScript或JScript,但实际上后两者是ECMA-262标准的实现和扩展
    BOM: Browse Object Model,提供与浏览器交互的方法和接口
    DOM: Document Object Model,提供访问和操作网页内容的方法和接口

    ## js的几大基本数据类型
    String:字符串;
    Number:数字(整数,浮点数float)
    Array:数组
    Object:对象
    布尔类型:Boolean a==b
    特殊类型 Null、Undefined、NaN
    NaN //number 类型
    Infinity //number类型
    “null==undefined ”
    ## JavaScript标签
    <script type=“text/javascript”></script>

    ```javascript
    alert("hello world") ; // 页面弹出提示框
    document.write("我输出在页面上,跟alert不一样");
    console.log("我输出在控制台上,页面看不见我");
    ```
    **javaScript文件引入方式**
    <script type="text/javascript" src="demo1.js" ></script>
    注意:
    1、不可以使用单标
    <script type="text/javascript" src="demo1.js“/ > //src 表示要引入的外部文件 type 表示 脚本语言的类型

    2、不可以在标签中写代码
    <script src="demo1.js">alert('xxxx')</script>;

    **JavaScript原样输出标签的内容:**
    "&lt"是 “<”
    "&gt "是 “>”

    **常量/直接量( 字面量 literal)**
    所有直接量(字面量),就是程序中直接显示出来的数据

    100 //数字字面量

    '100' //字符串字面量

    false //布尔字面量

    ## JS的标识符
    标识符是指JS中定义的符号,例如:变量名、函数名等。
    标识符可以由任意的大小写字母、数字、下划线(_)和美元符($)组成,但是不能以数字开头,不能是js中的保留关键字。
    标识符区分大小写,如:age和Age是不同的变量。但强烈不建议,用同一个单词的大小写区分两个变量。

    ## JS是弱类型的语言
    js是弱数据类型的语言,容错性较高。
    定义时不需要定义类型,赋值赋的是什么类型就是什么类型

    ```javascript
    var temp; //未定义 => undefined
    var temp = 10; //数字类型 number
    var temp ="hello"; //字符串类型
    ```
    查看变量的类型
    var x=10;
    alert(**typeof** x);

    ## JS的运算符
    算术运算符(+,-, *,/,%(取余数))
    字符串和变量的拼接(+)
    关系运算符
    <、>、<=、>=、== 、 ===、!= !==
    逻辑运算符
    && 与(且)、|| 或、! 非

    赋值运算符a+=10;
    =、+=、-=、*=、/=、%=
    自增、自减
    ++a, a++
    --a, a--

    ## JS类型转换
    字符串转换数字类型:parseInt()、parseFloat()
    parseInt() 是把其它类型转换为整型;
    parseFloat();是把其它类型转换为浮点型(小数)
    四舍五入Math.round(20.222)--->20
    Math.random()
    Math.min()
    Math.max()
    Math.abs()
    Math.pow()
    Math.ceil()
    Math.floor()
    Math.PI

    ## 强制类型转换
    String()
    Number()
    Boolean()
    转换为字符类型:
    ```javascript
    var a=100; // "100"
    var a = true; // "true"
    var a = null; // "null"
    var a = undefined; //undefined类型
    var a = NaN; //NaN类型
    var a = Infinity; //infinity类型
    console.log(a + ""); //隐形转换
    console.log(String(a));
    ```
    转换为数字类型:
    ```javascript

    //Number() 强制把其他类型转化为number类型
    var a = "100"; //100
    var a = "haha"; //NaN
    var a = true; // 1 false => 0
    var a = ""; // 0
    var a = undefined;// NaN
    var a = null; // 0
    var a = NaN; //NaN
    var a = Infinity; //Infinity
    console.log(Number(a)); // 100
    var result = Number(a)*1; // 100 //隐形转换
    console.log(result);
    ```
    转换为布尔类型Boolean():
    ```javascript
    var a = "100"; // true
    var a = "haha"; // true
    var a = ""; // false
    var a = " "; // true
    var a = 2; // true
    var a = 1; // true;
    var a = 0; // false;
    var a = NaN; // false;
    var a = Infinity; // true;
    var a = undefined; // false
    var a = null; // false
    //有实际内容的转化为boolean都为true ,没有实际内容的转化为boolean都为false
    ```

    小白成长之路~未完待续......

  • 相关阅读:
    Self Numbers
    【acdream】小晴天老师系列——竖式乘法
    全错位排列
    2 ^ x mod n = 1问题
    基于cocos2dx的横版动作游戏制作(二)
    基于cocos2dx的横版动作游戏制作(一)
    横版游戏制作之英雄技能CD遮罩,人物头像血条属性
    cocos2d横版游戏之摇杆控制
    C++ delete []p 数组指针,如何知道该数组大小的
    do { ....} while(0) 在宏里冗余的意义
  • 原文地址:https://www.cnblogs.com/xbwk/p/12084969.html
Copyright © 2011-2022 走看看