js程序题目

1.写出下列输出

var a = 10;
sayHi();
function sayHi(){
    a = a + 10;
    console.info(a);
    return a;
}
console.log(a);
console.log(sayHi() + 10);

2.写出下列输出

var a = 10;
sayHi();
function sayHi(){
    var a = a + 10;
    console.info(a);
    return a;
}
console.log(a);
console.log(sayHi() + 10);

3.假设页面中有4个p标签

function init(){
    var ps = document.getElementsByTagName("p");
    for(var i = 0;i < ps.length;i++){
        ps[i].onclick = function(){
            console.log(i);
        }
    }
}
init();

4.写输出

var add = function(m) {
    var temp = function(n) {
        return add(m + n);
    }
    temp.toString = function() {
        return m.toString(2)
    }
    return temp;
}
console.info(add(3)(4)(5));

1.答案

20
20
30
40

2.答案

NaN

10

NaN

NaN

3.答案:点击任意一个返回都是4,因为i为全局变量。点击时,for循环已执行完毕。解决方案如下,或者使用es6语法let。

(function(n) {
      ps[n].onclick = function() {
           console.info(n);
      }
})(i);

4.答案

1100

时间: 2024-11-08 23:42:21

js程序题目的相关文章

在Visual Studio上开发Node.js程序

[题外话] 最近准备用Node.js做些东西,于是找找看能否有Visual Studio上的插件以方便开发.结果还真找到了一个,来自微软的Node.js Tools for Visual Studio(NTVS),虽然现在仅发布了1.0 Alpha版本,但使用起来已经非常方便.而且,其开发团队与Python Tools for Visual Studio(PTVS)是同一个,而PTVS就是Visual Studio 2013中要创建自带的Python项目需要安装的那个程序,所以大可放心的使用NT

如何使用npm发布Node.JS程序包

如何使用npm发布Node.JS程序包 Heero.Luo发表于3年前,已被查看5065次 npm是Node.JS的程序包管理器.进行Node.JS开发时,经常使用它安装/卸载程序包.实际上,发布程序包的工作也是由它来完成的. 配置package.json 要打包程序,首先要配好各项设置,这些设置都由程序包根目录下的package.json指定.package.json的内容必须是严格的JSON格式,也就是说: 字符串要用双引号括起来,而不能用单引号: 属性名一定要加双引号: 最后一个属性后千万

一种简单的生产环境部署Node.js程序方法

最近在部署Node.js程序时,写了段简单的脚本,发觉还挺简单的,忍不住想与大家分享. 配置文件 首先,本地测试环境和生产环境的数据库连接这些配置信息是不一样的,需要将其分开为两个文件存储 到config目录下,比如: 开发环境配置文件config/development.js: module.exports = { port: 3001, mysql: { user: 'root' } }; 生产环境配置文件config/production.js: module.exports = { po

在Visual Studio上开发Node.js程序(2)——远程调试及发布到Azure

[题外话] 上次介绍了VS上开发Node.js的插件Node.js Tools for Visual Studio(NTVS),其提供了非常方便的开发和调试功能,当然很多情况下由于平台限制等原因需要在其他机器上运行程序,进而需要远程调试功能,不过还好,NTVS提供的远程调试也非常方便. [系列索引] 在Visual Studio上开发Node.js程序——NTVS介绍及使用 在Visual Studio上开发Node.js程序(2)——NTVS远程调试及发布到Azure [文章索引] NTVS远

JS程序的基本语法

JS程序的基本语法 JS是区分大小写的.如:Name和name是两个变量 JS中每一条语句,一般以英文下的分号(;)结束.这个分号不是必须的.为了向PHP兼容,最好加上分号. 运算符和变量,以及操作之间可以使用空格分开,这样的程序较容易阅读. 变量的类型——就是数据类型 变量的数据类型:数值型.字符型.布尔型.未定义型.空型.数组.对象.函数 变量的数据类型,分两大类:   基本数据类型:数值型.字符型.布尔型.未定义型.空型.很显著的特点:一个变量名只能存一个值.   举例:var a = 1

给JS程序一个统一的入口

JS程序包含框架部分,和应用部分. 框架部分提供代码的组织作用,包括定义全局变量,定义命名空间方法等,和具体应用无关,每个页面都需要包含相同的框架,框架部分在每个页面都相同. 应用部分提供页面的逻辑功能. 1.要将应用部分的代码组织起来,给他们一个统一的入口.例如:将应用部分的代码放到函数init中 function init() { ...... } 2.需要在适当的时候调用这个入口函数,完成页面程序的初始化. 如果JS程序控制控制某个DOM节点,而改节点当时还没载入,程序就会报错. 因此,我

js一些题目

1.对象里面的key不区分出string var a={}; a[1]="a"; a["1"]=2; console.log(a); 2.扩展Array原型,编写一个去除数组重复项的方法 // 算法一,两层循环,性能差 Array.prototype.unique = function(){ var len = this.length, i; // 两两比较(数组长度大于1) while ( --len > 0 ) { i = len; while ( --i

程序题目:输出图形 输入:n为打出图形的行数, m为每行的个数,t为图形符号

package com.day; import java.util.Scanner; public class M { public static void main(String[] args) { Scanner sc=new Scanner(System.in); /* System.out.println("用户请输入图形的行数="+"每行的个数="+"图形符号="); int n=sc.nextInt(); int m=sc.nextI

在Visual Studio 2013 上开发Node.js程序

[题外话] 最近准备用Node.js做些东西,于是找找看能否有Visual Studio上的插件以方便开发.结果还真找到了一个,来自微软的Node.js Tools for Visual Studio(NTVS),虽然现在仅发布了1.0 Alpha版本,但使用起来已经非常方便.而且,其开发团队与Python Tools for Visual Studio(PTVS)是同一个,而PTVS就是Visual Studio 2013中要创建自带的Python项目需要安装的那个程序,所以大可放心的使用NT