Javascript中级语法快速入手

1. 谈谈Javascript的对象

Javascript作为一种弱语言类型的语言,同时也是一种动态类型的语言。在使用Javascript的过程中,也常常需要用到Javascript的内置对象以及自定义的对象。

1.1 如何创建对象
Javascript是一种弱语言类型的语言,不必像Java、C#等高级语言那样必须通过构造函数的方法来创建对象,在Javascript中,主要有两种创建对象的方法,一种是直接通过new关键字定义,一种是通过函数来定义。如下:

  //第一种方式,直接通过new创建对象;
  var demo = new Object();
  demo.name = "Anderson";
  demo.sex = "male";
  demo.age = 23;

  //第二种格式,直接实例化,基本上和Json语法是一致的,一般作为第一种方式的替代语法。
  var demo = {name:"Anderson",sex:"male",age:25};

  //第三种格式,通过构造器来创建对象
  function Demo(name,sex,age){
    this.name = name;
    this.sex = sex;
    this.age = age;
  }
  var demo = new Demo("Andeson","male",25);

1.2 如何修改对象

Javascript和高级语言的对象语法是不一样的,总的来说,其限制比较少,当创建完对象后,可以对对象的属性、方法等进行动态的修改,比如添加一个新的属性,添加一个新的方法等。

  var demo = {Name:"Anderson"};
  demo.Sex = "male";

1.3 理解Javascript中的数字对象

在Javascript中,所有的数字都是64位,所有数字均由浮点类型组成。Javascript中采用的是IEEE754标准定义的64位浮点数格式表示数字,它能表示最大值为±1.7976931348623157 x 10308,最小值为±5 x 10 -324。

  var demo1 = 7;    //十进制表示法
  var demo2 = 07;   //八进制表示法
  var demo3 = 0x12;  //十六进制表示法

  var demo4 = 12e12;  //科学计数法表示法
  var demo5 = 12e-12; //科学计数法表示法

  var demo7 = 128;
  var demo8 = demo7.toString(16); //转化为十六进制
  var demo9 = demo7.toString(8);  //转化为八进制
  var demo10= demo7.toString(2);  //转化为二进制

  var demo11= Infinity;   //无穷大表示法
  var demo12= isNaN(100);  //非数字值表示法

  var demo13= typeof(12);       //数字的类型为 Number
  var demo14= typeof(new Number(12)); //Number的类型为Object
  var demo15 = (demo13 == demo14);   //两者相等
  var demo16 = (demo13=== demo14);   //两者不相等

1.4 理解Javascript中的字符串对象

  var str = "Hello,Anderson";

  var demo1 = str[0];        //通过索引,获取字符串中的字符,超出最大值则返回undefined
  var demo2 = str.indexOf("H");   //获取目标字符串在源字符串中的位置,找不到则返回 -1
  var demo3 = str.length;      //获取字符串的长度
  var demo4 = str.lastIndexOf("H"); //获取目标字符串在源字符串中的位置,从串尾开始找,找不到返回-1
  var demo5 = str.match("Anderson");//从源串中匹配目标串,若有,则返回目标串,否则,返回返回 null
  var demo8 = str.replace("A","d"); //将源串中的目标串替换为替换串
  var demo9 = str.toUpperCase();  //转换为大写
  var demo10= str.toLowerCase();  //转换为小写
  var demo11= str.split("d");    //转化为数组

  var demo12= "\'";    //表示单引号
  var demo13= "\"";    //表示双引号
  var demo14= "\\";    //表示斜杠
  var demo15= "\n";    //表示换行
  var demo16= "\r";    //表示回车
  var demo17= "\t";    //表示制表符
  var demo18= "\b";    //表示空格
  var demo19= "\f";    //表示换页

1.5 理解Javascript中的日期对象

  var demo1 = new Date();      //创建对象,当前日期
  var demo2 = new Date(22e9);    //创建对象,毫秒数
  var demo3 = new Date("2016-06-04");//创建对象,日期字符串
  var demo4 = new Date(2016,5,12,12,12,12); //创建对象,年月日时分秒

  var demo5 = (demo1 > demo2);    //比较日期

1.6 理解Javascript中的数组对象

  var demo1 = new Array(1,2,3,4);    //创建数组
  var demo2 = [1,3,4,5];        //创建数组
  var demo3 = demo1.concat(demo2);   //合并数组
  var demo5 = demo1.concat(demo2,demo3);//合并数组

1.7 理解Javascript中的正则对象RegExp

RegExp是正则表达式(Regular Expression)的缩写。正则表达式主要用于文本的检索。其基本的语法形式如下:

  var pattern = new RegExp(pattern,modifiers); //通过构造方法创建正则对象
  var pattern = /pattern/modifiers;       //直接声明正则对象

  //其中,修饰符modifiers有两种,i和g,i表示不区分大小写,g表示全文检索
  //pattern表示检索模型

  var str = "Hello, Anderson Lu";
  var pattern = /llo/gi;
  var demo1 = str.match(pattern); //使用实例

  var pattern2 = new RegExp("\\Lu\\gi");
  var demo2 = pattern2.test(str); //判断str中是否有符合模式pattern2的串,返回true或者false
  var demo3 = pattern2.exec(str); //返回匹配的字符串

好了,本文到此就结束了,除此之外,还有一些其他的对象,比如Math算术和布尔等等。大家可以通过我们来进行学习。

(0)

相关推荐

  • Javascript 6里的4个新语法

    JS 的 ES6版本已经被各大浏览器广泛支持,很多前端框架也已经使用 ES6,并且还有 Babel 可以做兼容处理,所以ES6已经进入了应用阶段 如果您对 ES6 还不太熟悉,下面4个简单的基础用法可以帮助您快速了解ES6 1.使用 let 和 const 声明变量 在传统的 ES5 代码中,变量的声明有两个主要问题 (1)缺少块儿作用域的支持 (2)不能声明常量 ES6中,这两个问题被解决了,增加了两个新的关键字:let 和 const 块儿作用域使用 let var a = 1; if (t

  • AngularJS语法详解(续)

    src和href属性 Angularjs中src应写成ng-src,href应写成ng-href 例如: 复制代码 代码如下: <img ng-src="/images/cats/{{favoriteCat}}"> <a ng-href="/shop/category={{number}}">Some text</a> 表达式 在模板中可以进行简单的数学运算.比较运算.布尔运算.位运算.引用数组.和对象符号等 尽管我们可以使用表达

  • js正则表达式基本语法(精粹)

    1.正则表达式基本语法 两个特殊的符号'^'和'$'.他们的作用是分别指出一个字符串的开始和结束. 例子如下: "^The":表示所有以"The"开始的字符串("There","The cat"等): "of despair$":表示所以以"of despair"结尾的字符串: "^abc$":表示开始和结尾都是"abc"的字符串--呵呵,只有&q

  • JavaScript基础语法之js表达式

    本文将详细介绍javascript表达式,表达式分为原始表达式和复杂表达式.一般,关于javascript基础语法,人们听得比较多的术语是操作符和语句.但,其实还有一个术语经常使用,却很少被提到,这就是javascript表达式(expression). 原始表达式(primary exression) 原始表达式是表达式的最小单位--它不再包含其他表达式.javascript中的原始表达式包括this关键字.标识符引用.字面量引用.数组初始化.对象初始化和分组表达式 PrimaryExpres

  • javaScript语法总结

    一:语法 JavaScript:一种基于对象和事件驱动得客户端脚本语言: 由下面三者组成: 1,ECMAScript(一种由Ecma国际(前身为欧洲计算机制造商协会,European Computer Manufacturers Association,通过ECMA-262标准化的脚本程序设计语言); 2,Bom(browser object model的缩写,简称浏览器对象模型); 3,Dom(Document Object Model,文档对象模型,简称DOM),是W3C组织推荐的处理可扩展

  • JavaScript正则表达式上之基本语法(推荐)

    相关阅读: js正则表达式基本语法(精粹) 正则表达式语法 一个正则表达式就是由普通字符(例如字符 a 到 z)以及特殊字符(称为元字符)组成的文字模式.该模式描述在查找文字主体时待匹配的一个或多个字符串.正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配. 定义 JavaScript种正则表达式有两种定义方式,定义一个匹配类似 <%XXX%> 的字符串 1. 构造函数 复制代码 代码如下: var reg=new RegExp('<%[^%>]+%>','g')

  • javascript基础语法——全面理解变量和标识符

    关于javascript,第一个比较重要的概念是变量,变量的工作机制是javascript的基本特性.实际上,变量是标识符的一种.本文将详细介绍变量和标识符 定义 标识符(Identifier)就是一个名字,用来对变量.函数.属性.参数进行命名,或者用做某些循环语句中的跳转位置的标记 //变量 var Identifier = 123; //属性 (new Object).Identifier = 'test'; //函数及参数 function IdentifierName(Identifie

  • AngularJS语法详解

    模板和数据的基本运作流程如下: 用户请求应用起始页面 用户的浏览器向服务器发起一次http连接,然后加载index.html页面,这个页面包含了模板 angular被加载到页面中,等待页面加载完成,查找ng-app指令,用来定义模板的边界 angular遍历模板,查找指定和绑定关系,将触发一些列动作:注册监听器.执行一些DOM操作.从服务器获取初始化数据.最后,应用将会启动起来,并将模板转换成DOM视图 连接到服务器去加载需要展示给用户的其他数据 显示文本 一种使用{{}}形式,如{{greet

  • NodeJs基本语法和类型

    写在前面 今天想要查下Node的类型什么的知识,想要总结下,在Googol上看到一个文章,但是原始的链接不在了,在快照中把这篇文章拉出来,如果原作者有问题,请联系我! 该文章都是一些JS的基础,高手自动跳过!我之前没怎么写过js,这方面比较弱,所以在写node的时候也遇到了麻烦,这里给自己补充下知识! 正文 Node.js 的基础是 JavaScript 这门 脚本语言.而大多数的脚本语言一个共同的特点就是"弱类型". 不同于 PHP 的是,PHP 就是是有了新变量也无需申明,而 Ja

  • javascript基本语法

    1.运算符 运算符就是完成操作的一系列符号,它有七类: 赋值运算符(=,+=,-=,*=,/=,%=,<<=,>>=,|=,&=).算术运算符(+,-,*,/,++,--,%).比较运算符(>,<,<=,>=,==,===,!=,!==).逻辑运算符(||,&&,!).条件运算(?:).位移运算符(|,&,<<,>>,~,^)和字符串运算符(+). 可能很多人不知道"==="是什么.

随机推荐