js语言一

js语言:    JavaScript:    javascript是脚本语言,是一种轻量级的编程语言。    javascript是可插入HTML页面的编程代码    JavaScript 插入 HTML 页面后,可由所有的现代浏览器执行。

    javascript 的引入方式:        1,在<head></head>内的Script标签内写代码            <script>              // 在这里写你的JS代码            </script>        2,引入额外的js文件,及创建一个js文件,在里面写好你的代码            <script src="myscript.js"></script>    javascript 的注释:        // 表示单行注释        /*        多行注释        多行注释        */

        结束符号以分号(;)为结束符

    变量声明:        var 关键字声明, 用法:var 变量名,  变量名不能以数字开头            var name = ‘jerry‘;            var age = 38;        或者 let name = ‘jerry‘;        let声明的变量在局部有效   不会影响全局相同的变量名        var声明的变量是作用与全局   直接改变了全局的

        注意:            变量名是区分大小写的,            推荐使用驼峰式命名规则,            不要用关键字去做变量名    常量: 用 const来声明常量,一旦声明,其值就不能改变        const PI = 3.1415;

    javascript  数据类型:        Javascript拥有动态数据类型            var x;// 此时x就是undefined            var x = 1; // 此时x就是数字            var x = ‘Alex‘ // 此时x就是字符串

        数值类型Number(类似整型+浮点型)在这里不区分整型和浮点型,统称数值类型            var a = 12.34;            var a = 20            数值类型中有一种特殊的叫NaN , 它是数值类型,但是表示不是数字            常用方法:            parseInt("123")  // 返回123            parseInt("ABC")  // 返回NaN,NaN属性是代表非数字值的特殊值。该属性用于指示某个值不是数字。            parseFloat("123.456")  // 返回123.456            parseInt("123.456")   // 返回的是123 不能识别小数点,所以要转就用parseFloat

        字符串类型 String            字符串用单引号,和双引号            单行文本可以用单引号,双引号            多行文本用~ 多行文本~    即用~ ~   此~还可以做替换,和%s作用一样            在这里正常的替换用$符,叫模板字符串            字符串的常用方法

        
方法 说明
.length 返回长度
.trim() 移除空白
.trimLeft() 移除左边的空白
.trimRight() 移除右边的空白
.charAt(n) 返回第n个字符,返回的是字符,括号中的n是索引号
.concat(value, ...) 拼接
.indexOf(substring, start) 子序列位置,通过字符获取索引
.substring(from, to) 根据索引获取子序列
.slice(start, end) 切片
.toLowerCase() 小写
.toUpperCase() 大写
.split(delimiter, limit) 分割
拼接字符串一般使用“+”      string.slice(start, stop)和string.substring(start, stop):

两者的相同点:如果start等于end,返回空字符串如果stop参数省略,则取到字符串末如果某个参数超过string的长度,这个参数会被替换为string的长度

substirng()的特点:如果 start > stop ,start和stop将被交换如果参数是负数或者不是数字,将会被0替换

silce()的特点:如果 start > stop 不会交换两者如果start小于0,则切割从字符串末尾往前数的第abs(start)个的字符开始(包括该位置的字符)如果stop小于0,则切割在从字符串末尾往前数的第abs(stop)个字符结束(不包含该位置字符)
        s1 = ‘eghui‘        s1.substring(0,5)  切片不支持负数,所以了解即可        s1.slice(0,-1)     切片推荐使用slice        s2.split(‘|‘,1)     1 表示从切完的结果后拿出一个结果,切完是数组(即python中的列表)                            如果数字超出,就拿最多,不会报错

布尔类型:(全部小写)    true 或 false    var a = true;    var b = false;   ""(空字符串)、0、null、undefined、NaN都是false。   null和undefined 的区别:    null表示值是空,一般在需要指定或清空一个变量时才会使用,如 name=null; 即它有,但是为空    undefined表示当声明一个变量但未初始化时,该变量的默认值是undefined。                还有就是函数无明确的返回值时,返回的也是undefined。即只声明了变量,没赋值;

     重点;null表示变量的值是空(null可以手动清空一个变量的值,使得该变量变为object类型,值为null),          undefined则表示只声明了变量,但还没有赋值。

数组:(相当于python中的列表)    数组对象的作用是:使用单独的变量名来存储一系列的值    var a = [123, "ABC"];    console.log(a[1]);  // 输出"ABC"
方法 说明
.length 数组的大小
.push(ele) 尾部追加元素
.pop() 获取尾部的元素
.unshift(ele) 头部插入元素
.shift() 头部移除元素
.slice(start, end) 切片
.reverse() 反转
.join(seq) 将数组元素连接成字符串
.concat(val, ...) 连接数组
.sort() 排序
.forEach() 将数组的每个元素传递给回调函数
.splice() 删除元素,并向数组添加新元素。
.map()
返回一个数组元素调用函数处理后的值的新数组


类型查询:    typeof是一个一元运算符(就像++,--,!,- 等一元运算符),不是一个函数,也不是一个语句。    对变量或值调用 typeof 运算符将返回下列值之一:    undefined - 如果变量是 Undefined 类型的    boolean - 如果变量是 Boolean 类型的    number - 如果变量是 Number 类型的    string - 如果变量是 String 类型的    object - 如果变量是一种引用类型或 Null 类型的运算符    算数运算符    + - * / % ++ --        var x=10;        var res1=x++;        var res2=++x;        res1;        10        res2;        12        这里由于的x++和++x在出现赋值运算式,        x++会先赋值再进行自增1运算,而++x会先进行自增运算再赋值!    比较运算符        > >= < <= != == === !==

        1 == “1”  // true  弱等于        1 === "1"  // false 强等于        //上面这张情况出现的原因在于JS是一门弱类型语言(会自动转换数据类型),            所以当你用两个等号进行比较时,JS内部会自动先将数值类型的1转换成字符串类型的1再进行比较,            所以我们以后写JS涉及到比较时尽量用三等号来强制限制类型,防止判断错误

    逻辑运算符        && || !    (and or not)    赋值运算符        = += -= *= /=流程控制:    一,if-else    if (条件1){满足条件1的代码块1}                   else if(条件2){满足条件2的代码块;}                   else{以上条件都不满足的代码块};          案列:            var a = 10;            if (a > 5){              console.log("a > 5");            }else if (a < 5) {              console.log("a < 5");            }else {              console.log("a = 5");            }        二:switch           switch中的case子句通常都会加break语句,           否则程序会继续执行后续case中的语句。

            var day = new Date().getDay();            switch (day) {              case 0:              console.log("Sunday");              break;              case 1:              console.log("Monday");              break;            default:              console.log("...")            }        for            for (var i=0;i<10;i++) {                  console.log(i);                }

        while            var i = 0;            while (i < 10) {              console.log(i);              i++;            }

    三元运算        var a = 1;        var b = 2;        var c = a > b ? a : b        这里的三元运算顺序是先写判断条件a>b        如果条件成立就是冒号前面的值a        条件不成立就是冒号后面的值b

        三元运算可以嵌套使用        var a=10,b=20;        var x=a>b ?a:(b=="20")?a:b;        x        10函数:    JavaScript中的函数和Python中的非常类似,只是定义方式有点区别    普通函数定义        function f1() {          console.log("Hello world!");        }

    带参数的函数        function f2(a, b) {          console.log(arguments);  // 内置的arguments对象          console.log(arguments.length);          console.log(a, b);        }

    带返回值的函数        function sum(a, b){          return a + b;        }        sum(1, 2);  // 调用函数

    匿名函数方式        var sum = function(a, b){          return a + b;        }        sum(1, 2);

        // 立即执行函数 书写立即执行的函数,首先先写两个括号()()这样防止书写混乱        (function(a, b){          return a + b;        })(1, 2);

ES6中允许使用“箭头”(=>)定义函数。        var f = v => v;        // 等同于        var f = function(v){          return v;        }如果箭头函数不需要参数或需要多个参数,就是用圆括号代表参数部分        var f = () => 5;        // 等同于        var f = function(){return 5};

        var sum = (num1, num2) => num1 + num2;        // 等同于        var sum = function(num1, num2){          return num1 + num2;  //这里的return只能返回一个值,如果想返回多个值需要自己手动给他们包一个数组或对象中        }函数中的arguments参数    function add(a,b){      console.log(a+b);      console.log(arguments.length);     console.log(arguments[0]);//arguments相当于将出传入的参数全部包含,这里取得就是第一个元素1    }

    add(1,2)    输出为 3  2   1    注意:    函数只能返回一个值,如果要返回多个值,只能将其放在数组或对象中返回。    函数的全局变量和局部变量    局部变量:    在JavaScript函数内部声明的变量(使用 var)是局部变量,所以只能在函数内部访问它(该变量的作用域是函数内部)。只要函数运行完毕,本地变量就会被删除。    全局变量:    在函数外声明的变量是全局变量,网页上的所有脚本和函数都能访问它。    变量生存周期:    JavaScript变量的生命期从它们被声明的时间开始。    局部变量会在函数运行以后被删除。    全局变量会在页面关闭后被删除。    作用域    首先在函数内部查找变量,找不到则到外层函数查找,逐步找到最外层。与python作用域关系查找一模一样!

    例子:        var city = "BeiJing";        function f() {          var city = "ShangHai";          function inner(){            var city = "ShenZhen";            console.log(city);          }          inner();        }

        f();  //输出结果是?ShenZhen

        var city = "BeiJing";        function Bar() {          console.log(city);        }        function f() {          var city = "ShangHai";          return Bar;        }        var ret = f();        ret();  // 打印结果是?  BeiJing

        var city = "BeiJing";        function f(){            var city = "ShangHai";            function inner(){                console.log(city);            }            return inner;        }        var ret = f();        ret();     ShangHai


原文地址:https://www.cnblogs.com/Fzhiyuan/p/11483171.html

时间: 2024-08-25 00:58:50

js语言一的相关文章

ES6学习一 JS语言增强篇

一 背景 JavaScript经过二十来年年的发展,由最初简单的交互脚本语言,发展到今天的富客户端交互,后端服务器处理,跨平台(Native),以及小程序等等的应用.JS的角色越来越重要,处理场景越来越复杂.在这个背景下,JS最初的简陋设计显然是不太够用的,其松散的语法规则,拗口的继承机制(传说中的6种继承方法),无命名空间,模块化,以及异步处理的回调地狱等等特性在开发过程中容易成为开发人员的各种痛点,各个JS框架比如jQuery,SeaJs,等等为了这些问题也是操碎了心.不过随着JS语言的发展

JS学习第二天----JS语言核心

JS语言核心 有些东西,对于初学者来说,可能看不懂,我在这里只是想说一下,JS里面有这么个情况,并不是说让你掌握,你只需要大致浏览一下就可以了. // 所有在双斜杠之后的内容都属于注释 //变量是表示值的一个符号名字 //变量通过var关键字来声明,案例: var x;//声明一个变量x //值可以通过等号赋值给变量 x=0;  //现在变量x的值为0 x //=>0:通过变量获取其值 //JS支持多种数据类型 x=1; //数字 x=0.01; //整数和实数公用一种数据类型 x="he

排序算法——选择排序(js语言实现)

选择排序:顾名思义选择,选择排序属于O(N^2)的排序算法,意思就是选择数组中的最小的拿出来放在第一位,然后再剩下的数里面,选择最小的,排在第二位,以此类推. 例如:8  3  4  5  6  2  1  7 第一次:寻找数组中最小的数1,然后和8替换,得到 1 3 4 5 6 2 8 7 第二次:因为1的位置已经确定,所以只需要找剩下数组中最小的就行了,2和3互换得到1 2 4 5 6 3 8 7 第三次:1和2的位置已经确定,就看剩下的数中最小的数,3和4互换,结果是1 2 3 5 6 4

JS 语言核心(JavaScript权威指南第六版)(阅读笔记)

前言: 对于程序员,学习是无止境的,知识淘换非常快,能够快速稳固掌握一门新技术,是一个程序员应该具备的素质.这里将分享本人一点点不成熟的心得. 了解一门语言,了解它的概念非常重要,但是一些优秀的设计思想需要细心和大量实践才能慢慢参悟,在这之前需要做的是能够运用它来开发,那么了解一些基础特性非常有必要,通常这些特性是需要经验积累,从各种坑中累计出来,但是还有一种看似很笨却很有效的学习方法.那就是将别人的经验记录下来,有事没事都拿出来看看,集合开发中的经验,这会非常有效. 调试工具 firebug

js语言规范_ES5-6-7_个人总结

## **理解ES** 1. 全称: ECMAScript 2. js语言的规范 3. 我们用的js是它的实现 4. js的组成   * ECMAScript(js基础)   * 扩展-->浏览器端       * BOM     * DOM   * 扩展-->服务器端     * Node.js        ## ES5 1. **严格模式**   * 运行模式: 正常(混杂)模式与严格模式   * 应用上严格式: 'strict mode';   * 作用:      * 使得Javas

js:语言精髓笔记1--语法

标识符: 命名: 语法以及类型----语法关键字 值(的存储位置)----变量和常量 绑定: 语法关键字对逻辑的绑定----作用域限定 变量对位置的绑定---变量生存周期的限定 声明:约定变量的生存周期和逻辑作用域: 标识符语义关系: 与值相关: 类型 变量: 直接量 对象 与逻辑相关: 控制流程语句: 标签声明 一般流程控制语句 异常 与值和逻辑都相关: 表达式: 值运算 对象存取 逻辑语句: 顺序 分支 循环 其他: 注释 JS引擎运行及响应错误:1.语法分析(语法分析错误):2执行(执行异

thinkphp 外部js语言包

Thinkphp php文件也外部js文件公用同一个语言包 一 . php语言包转json数据格式 1.新建验证字段的语言包 application\common\lang\validate-cn.php <?php // 验证字段语言包 中文 return [ 'validate'=>[ 'name' => [ 'empty'=> '用户名不能为空', 'length' => '用户名长度6-20字符' ], 'email' => [ 'empty' => '邮

JavaScript(JS)语言的基础知识

JavaScript(JS)它是一门强大的语言,但是JavaScript(JS)不能去单独操作数据库.我们要知道它的输出语法有3中,本别是alert(""),confirm("")和prompt("").变量,var a=1000;var b=10.5;var c=d:这个写法是错误的,因为这样写"d"是未定义,计算机把它当做了变量,然后在执行中发现"d"未定义,所以报了错误,正确写法要把"d&q

js:语言精髓笔记3----语句

JS语句分类: 声明语句: 变量声明语句: 标签声明语句: 函数声明语句: 表达式语句:(表达式加分号) 变量赋值语句:具有声明一个变量的隐式效果: 函数调用语句; 属性赋值语句: 方法调用语句: 分支语句: 条件分支语句: 多重分支语句: 循环语句: for() for...in while do..while 控制结构: 继续执行子句: 中断执行子句: 函数返回子句 异常触发语句: 异常捕获与处理: 其他: 空语句: with语句: 声明语句与赋值语句: 声明语句(显示声明)一定就有var,