小编Ful*_*oon的帖子

可以在JavaScript中替换var吗?

我来自Java背景并开始学习JavaScript.

使用关键字let声音在JavaScript中声明变量是使用类似的范围规则来声明Java中的变量.在JavaScript中提升的概念令人困惑(考虑我的C++/Java背景),我没有看到使用let代替的任何陷阱var.

我的理解是否正确?

javascript

14
推荐指数
1
解决办法
1731
查看次数

默认情况下如何在节点中启用严格模式?

我刚开始(在工作中学习)在nodejs中的一个新项目.我将使用ES5和ES6(需要了解ES6的功能).那么,IMO,在每个文件中使用"use strict"是一项繁琐的任务,并且默认情况下寻找启用严格模式的方法,这样我就不需要在每个文件中都写入这一行.因为我没有任何旧代码所以不用担心向后兼容性.任何人都可以帮我在java脚本中默认启用严格模式吗?

javascript node.js

5
推荐指数
1
解决办法
3098
查看次数

在严格模式下立即调用函数表达式

在严格模式下,我们不能使用立即调用函数表达式(IIFE)吗?以下程序证明我不能在严格模式下使用IIFE。如果我评论“使用严格”,它会起作用。这是因为每个严格模式下的表达式都必须具有名称的原因吗?

'use strict'
(function _test () {
var obj = {`enter code here`
        a:      2,
        b:      'name',
        c:      function _c (){
                console.log('a: ' + this.a + " b: "+ this.b);
        }
};
obj.c();
}) ();
Run Code Online (Sandbox Code Playgroud)

以下是输出

(function _test () {
^
TypeError: string is not a function
    at Object.<anonymous> (/home/ganesh/temp/let.js:2:1)
    at Module._compile (module.js:456:26)
    at Object.Module.`enter code here`_extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Function.Module.runMain (module.js:497:10)
    at startup (node.js:119:16)
    at node.js:929:3
Run Code Online (Sandbox Code Playgroud)

javascript

4
推荐指数
1
解决办法
530
查看次数

GIT:新分支指向开发分支

我从github克隆了一个分支,它的名字是dev.我已经开始使用它,拉动并推送代码更改并确保我的本地存储库是最新的远程.我将开始实现一个新功能,因此创建了一个新的分支如下:

/>git branch <newBranchName>
Run Code Online (Sandbox Code Playgroud)

分支创建成功.我已经验证了dev和这个新分支的提交编号,两者都是一样的.然后我将该分支推送到github,如下所示:

/>git push origin newBranchName 
Run Code Online (Sandbox Code Playgroud)

直到现在都没有问题.我已经开始研究这个新分支,然后将代码推送到github然后意识到它推动了dev分支的所有更改.

/>git branch -vv
Run Code Online (Sandbox Code Playgroud)

说这个新分支指向dev分支.但是我的团队伙伴能够将更改推送到github上的这个新分支.怎么会出错?

git

2
推荐指数
1
解决办法
37
查看次数

call()与java脚本中的Vs bind(); 为什么即使在call()存在的情况下引入bind()

在我所了解到的其中一个博客中,它.bind()只是将传递的对象硬绑定到'this',另外.call()还会执行该函数.但是,将其分配.call()给其他变量将实现相同的目的.我试图理解为什么.bind()要介绍或者我错过了什么?以下是证明我上面所说的代码:

function foo () {
    console.log( this.a );
}

let obj = {
    a: 2,
    foo: foo
};

let a = 'oops! global';

let foocall = foo.call (obj);
let foobind = foo.bind (obj);

foo.call (obj);

setTimeout ( foocall , 100);
setTimeout ( foo , 100);
Run Code Online (Sandbox Code Playgroud)

输出:

[xyz:〜/ sandboxes/js] $ node --use-strict binding.js 2 2 2

javascript

0
推荐指数
1
解决办法
36
查看次数

标签 统计

javascript ×4

git ×1

node.js ×1