创建 function 对象的两种方法:

方式一(推荐)

  function func1(){
alert(123);
return 8
} var ret = func1()
alert(ret)

方式二:var func2 = new Function("参数1", "参数n","函数体");

    var add = new Function("a", "b", "alert(a+b)")
add(1,2);
alert(add.length)

arguments 对象

获得参数的个数

  var ret=0;
function add(){
alert(arguments.length)
}
add(1,2,3,4,5)

获得参数的个数和值的总额

    var ret = 0;
function add(){
console.log(arguments.length);
console.log(arguments); for (var i in arguments){
ret += arguments[i]
}
return ret;
} alert(add(1,2,3,4))

控制抛出异常

    function func2(){
if (arguments.length != 3){
throw new Error("param should be 3")
}
} func2(1,2,3,4)

自执行函数

    (function(arg){console.log(arg);})('123')

instanceof

用于判断一个变量是否某个对象的实例

    var s = "hello";
var i = 8; alert(typeof(s));
alert(typeof(i)); var s2 = new String("hello2");
alert(typeof(s2))
alert(s2 instanceof String); var n = new Number(2);
alert(typeof(n))
alert(n instanceof Number);

在JavaScript中除了null和undefined以外其他的数据类型都被定义成了对象,也可以用创建对象的方法定义变量,String、Math、Array、Date、RegExp都是JavaScript中重要的内置对象,在JavaScript程序大多数功能都是通过对象实现的

JavaScript 有 11 种内置对象, 包括:

Array ,String , Date, Math, Boolean, Number Function, Global, Error, RegExp , Object

String对象

创建字符串对象:

    var s = "hello";
var s2 = new String("hello2"); alert(s);
alert(s2); // String 对象 length 方法
alert(s.length); // 遍历字符串
for (var i in s){
console.log(s[i])
}

各种方法

// 用于把字符串显示为斜体
document.write(s.italics()); // 用于把字符串显示为粗体
document.write(s.bold()); // 用于创建 HTML 锚
document.write(s.anchor("klvchen")); // 用于把字符串转化成大写
console.log(s.toUpperCase()); // 用于把字符串转化成小写
console.log(s.toLowerCase()); // charAt返回index位置的字符
console.log(s.charAt(3)); // charCodeAt返回index位置的Unicode编码
console.log(s.charCodeAt(3)); // search返回匹配字符串的首字符位置索引
console.log(s.search("l")); // match返回匹配字符串的数组,如果没有匹配则返回null
console.log(s.match("l")); console.log(s.match("l")[0]); // 取数组里面的值
console.log(s.match("l")[1]); // 替换子字符串
console.log(s.replace("e","E")); // 分割字符串
console.log(s.split("e")); // 连接字符串
console.log(s.concat(" world")); // 截取子字符串,右不包括
console.log(s.substr(1, 1));
console.log(s.substring(1, 4));
console.log(s.slice(1, -1)); // 返回指定第一个元素的位置
console.log(s.indexOf("l"));

Array对象

创建数组对象

// 方法一:
var arr = [1,2,3,4]; // 方法二:
var arr2 = new Array(1,2,3,4);
//var arr2 = new Array(5, "hello", true, [1,2]); // 输出数组对象的长度
console.log(arr.length);
console.log(arr2.length); // 定义一个长度为3的数组,数组的值因未定义则默认为空
var arr4 = new Array(3);
console.log(arr4[0]);
console.log(arr4[1]);
console.log(arr4[2]); // 数组是可变成的
var arr5 = new Array(3);
arr5[5] = 10;
console.log(arr5.length); // 二维数组
var arr6 = new Array(6, "klvchen", true, [1,2]);
alert(arr6[3][0]); // 连接数组-join方法
ret = ["hello", "world"].join(" &&& ");
alert(ret); // push pop这两个方法模拟的是一个栈操作, push 压栈, pop弹栈
var arr7 = [1, 4, 6];
arr7.push(13);
console.log(arr7);
var ret = arr7.pop();
alert(ret); // unshift shift。unshift是将value值插入到数组x的开始, shift是将数组x的第一个元素删除
var arr7 = [1, 4, 6];
arr7.unshift(45);
console.log(arr7);
arr7.shift();
console.log(arr7); // 数组排序。reverse 作用为颠倒数组元素;sort 作用为排序数组元素
var arr8 = [11, 5, 3, 7, 100];
arr8.reverse();
console.log(arr8);
console.log(arr8.sort()); // 按照从小到大排序
var arr8 = [11, 5, 3, 7, 100]; function mysort(a,b){
if (a>b){
return 1;
}else if(a<b){
return -1;
}else{
return 0;
}
} function mysort2(a,b){
return a-b;
} console.log(arr8.sort(mysort));
console.log(arr8.sort(mysort2));

作用域,作用域链

  • 作用域链在函数被解释的过程中已经创建(函数做为作用域)
  • 提前声明

JavaScript 基础(二) - 创建 function 对象的方法, String对象, Array对象的更多相关文章

  1. 2、JavaScript 基础二 (从零学习JavaScript)

     11.强制转换 强制转换主要指使用Number.String和Boolean三个构造函数,手动将各种类型的值,转换成数字.字符串或者布尔值. 1>Number强制转换 参数为原始类型值的转换规 ...

  2. 内置对象(Date String Math Array)

    什么是对象 JavaScript 中的所有事物都是对象,如:字符串.数值.数组.函数等,每个对象带有属性和方法. 对象的属性:反映该对象某些特定的性质的,如:字符串的长度.图像的长宽等: 对象的方法: ...

  3. JavaScript原生对象属性和方法详解——Array对象

    http://www.feeldesignstudio.com/2013/09/native-javascript-object-properties-and-methods-array/ lengt ...

  4. javascript(基础)_对数组的遍历方法总结(find, findIndex, forEach,)

    一.前言                                                                                                ...

  5. JavaScript基础二

    1.7 常用内置对象 所谓内置对象就是ECMAScript提供出来的一些对象,我们知道对象都是有相应的属性和方法 1.7.1 数组Array 1.数组的创建方式 字面量方式创建(推荐大家使用这种方式, ...

  6. JavaScript 基础(二)数组

    字符串, JavaScript 字符串就是用'' 和""括起来的字符表示. 字符字面量, \n 换行, \t 制表, \b 退格, \r 回车, \f 进纸, \\ 斜杠,\' 单 ...

  7. Gradle学习系列之二——创建Task的多种方法

    在本系列的上篇文章中,我们讲到了Gradle入门,在本篇文章中我们将讲到创建Task的多种方法. 请通过以下方式下载本系列文章的Github示例代码: git clone https://github ...

  8. JavaScript---网络编程(3)-Object、String、Array对象和prototype属性

    本节学习JavaScript的对象和方法(函数)~ Object 对象 提供所有 JScript 对象通用的功能. obj = new Object([value]) 参数 obj 必选项.要赋值为 ...

  9. JavaScript基础回顾知识点记录6-操作元素样式和事件对象(介绍基本使用)

    js 中 操作元素样式 通过js修改元素内联样式(设置和读取的都是内联样式) 获取当前元素显示的样式 <html> <head> <meta charset=" ...

随机推荐

  1. 一个简单的实例演示vuex模块化和命名空间

    因为Vuex Store是全局注册的,不利于较大的项目,引入模块分离业务状态和方法,引入命名空间解决不同模块内(getters,mutaions,actions)名称冲突的问题 ----------- ...

  2. IdentityServer4源码颁发token分析及性能优化

    IdentityServer4源码地址 IdentityModel源码地址 以下的流程用ResourceOwnerPassword类型获取token作为介绍 分两种获取形式说明 token请求地址为默 ...

  3. Linux 下 Shell 的自动交互

    在编写脚本的时候经常会遇到这种情况,某些程序的命令执行的之后可能会要求用户进行输入,这个时候就需要一些特殊写法来应对这种问题了.这里参考 这篇文章提到可以使用 delimiter 分界符来解决. 也就 ...

  4. php安装xunserch

    xunserch的安装步骤 注意:xunserch只能在linux下使用 1.安装依赖工具 yum install make gcc g++ gcc-c++ libtool autoconf auto ...

  5. Eclipse For JavaEE安装、配置、测试

    Eclipse For JavaEE安装.配置.测试(win7_64bit) 目录 1.概述 2.本文用到的工具 3.安装与配置 4.JavaSE开发测试(确保JDK已正确安装) 5.JavaEE开发 ...

  6. MongoDB高可用集群+MMS集群监控搭建

    备注: mongodb学习资料 http://www.runoob.com/mongodb/mongodb-tutorial.html 一. 集群的三个组件: mongos(query routers ...

  7. 【原创】《windows驱动开发技术详解》第4章实验总结二

    1 实验要求(WDM驱动)     2 编写过程   2.1 确立整体架构   2.1.1 入口函数——DriverEntry   (1)作用 设置pDriverObject结构体,注册AddDevi ...

  8. 【转载】ucos临界段

    其实很简单:     临界段就是不可中断的程序段,比如从UART中读取当前传递回来的值,如果有UART中断,此时这个值又会改变.同样临界段就是保护这类全局变量,如在读取时间节拍时,不应该被时钟更新时钟 ...

  9. 【详解JavaScript系列】JavaScript之变量

    一  概述 本篇文章将讲解JavaScript中的变量,大致内容归结为: 1.变量定义 包括变量声明和变量初始化 2.变量种类 包括局部变量和全局变量 3.变量链式作用域及访问 二  内容 (一)变量 ...

  10. Java——this关键字

    前言 this关键字属于Java中比较复杂的关键字之一,若是学习过C++或者其他的一些面向对象语言也会遇到this这个关键字并且都会看到this的含义就是表示当前对象.什么叫做表示当前对象?this在 ...