相关疑难解决方法(0)

如何从Javascript中的unix时代开始以毫秒为单位获得时间?

可能重复:
如何在JavaScript中获取时间戳?
从epoch计算毫秒数

如何epoch在Javascript中获取当前时间?基本上是自1970-01-01午夜以来的毫秒数.

javascript

279
推荐指数
2
解决办法
22万
查看次数

为什么"new Date().toString()"在给定Javascript运算符优先级的情况下工作?

MDN声明 Javscript中有两个操作符具有最高优先级:

  • 左关联成员运算符: foo.bar
  • 右关联新运算符: new Foo()

我通常明确地将两者分开:(new Date()).toString()
但我经常看到它们两者合二为一:new Date().toString()

根据这个答案,第二种方式起作用的原因在于,当两个运算符具有相同的优先级时,它是第二个运算符的关联性.在这种情况下,成员运算符是左关联的,这意味着new Date()首先评估.

但是,如果是这样的话,为什么会new Date.toString()失败呢?毕竟new Date只是语法糖new Date().上述论点说它应该有用,但显然不行.

我错过了什么?

javascript parsing operator-precedence

28
推荐指数
2
解决办法
952
查看次数

我需要从对象文字中的子对象调用父属性

我试图从子对象调用父属性

var parentObj = {  
   attr1:1,  
   attr2:2,   
   childObj:{  
      method1:function(){  
         return this.attr1 * this.attr2;  
      }  
   }  
}
Run Code Online (Sandbox Code Playgroud)

但它不起作用.

javascript

23
推荐指数
5
解决办法
2万
查看次数

你为什么要在没有括号的情况下调用新的日期?

我刚刚在Gmail中打开开发工具时看到了这个片段:

var GM_TIMING_END_CHUNK1=(new Date).getTime();
Run Code Online (Sandbox Code Playgroud)

我通常会期待这样的事情,因为调用没有括号的构造函数是相当罕见的(至少我从未见过它直到现在):

var GM_TIMING_END_CHUNK1=new Date().getTime();
Run Code Online (Sandbox Code Playgroud)

要么

var GM_TIMING_END_CHUNK1=Date.now(); //newer browsers
Run Code Online (Sandbox Code Playgroud)

这样做有什么好处,行为有什么不同吗?这是完全相同的字符数量,所以简洁不是一个原因.

javascript datetime constructor

16
推荐指数
2
解决办法
1686
查看次数

"new <function>"后的括号是否可选?

我在Chrome控制台中运行了以下一对代码段,结果相同:

test = new function(){
  var a = 1;
  var b = 2;
  var c = 3;
  this.debugBase = function(){console.log('' + a + b + c)};
};
test
debugBase: function (){console.log('' + a + b + c)}
__proto__: Object
Run Code Online (Sandbox Code Playgroud)

与:

test2 = new (function(){
  var a = 1;
  var b = 2;
  var c = 3;
  this.debugBase = function(){console.log('' + a + b + c)};
})();
test2
debugBase: function (){console.log('' + a + b + c)}
__proto__: Object
Run Code Online (Sandbox Code Playgroud)

我错过了什么吗?函数后的括号有什么意义吗?如果没有,为什么人们把它们放在那里?

javascript initialization new-operator

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

MyClass.prototype = new Object()和MyClass.prototype = Object之间的区别

任何人都可以告诉我,在Javascript中的区别

MyClass.prototype = new Object(); //or ... = {}
Run Code Online (Sandbox Code Playgroud)

MyClass.prototype = Object;
Run Code Online (Sandbox Code Playgroud)

是什么?如果结果没有差异,哪一个是最佳实践方式?

javascript inheritance

11
推荐指数
1
解决办法
2175
查看次数

使用带有nuxt.js的webpack worker-loader

我正在尝试在nuxt.js框架内使用Web Worker,但不断收到引用错误.ReferenceError: Worker is not defined.

我已经通过npm 安装了worker-loader 1.1.1并将以下规则添加到我的nuxt.config.js:

module.exports = {
  build: {
    extend (config, { isDev, isClient }) {
      if (isDev && isClient) {
        config.module.rules.push({
          enforce: 'pre',
          test: /\.(js|vue)$/,
          loader: 'eslint-loader',
          exclude: /(node_modules)/
        })
      }
      // Web Worker support
      config.module.rules.push({
        test: /\.worker\.js$/,
        use: { loader: 'worker-loader' },
        exclude: /(node_modules)/
      })
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

如果我通过nuxt build它创建一个构建,看起来就像创建了一个Web worker文件.

Asset                           Size                      
2a202b9d805e69831a05.worker.js  632 bytes          [emitted]
Run Code Online (Sandbox Code Playgroud)

我在vuex模块中导入它,如下所示:

import Worker from '~/assets/js/shared/Loader.worker.js'

console.log(Worker) …
Run Code Online (Sandbox Code Playgroud)

webpack nuxt.js

8
推荐指数
1
解决办法
1970
查看次数

无法在jquery document.ready中初始化对象

我有一个名为的javascript对象concept:

function concept() {
    this.ConceptId = 0;
    this.Name = "";
}
Run Code Online (Sandbox Code Playgroud)

我试图在jQuery中启动它document.ready:

$(document).ready(function() {
    var concept = new concept;
});
Run Code Online (Sandbox Code Playgroud)

它返回一个错误:

未捕获的TypeError:概念不是构造函数

如果我将对象移到其中document.ready,它就可以工作了.

$(document).ready(function() {
    function concept() {
        this.ConceptId = 0;
        this.Name = "";
    }
    var concept = new concept;
});
Run Code Online (Sandbox Code Playgroud)

我仍然是javascript的新手,据我所知,document.ready在DOM完成时运行.我不明白为什么它无法访问document.ready范围外定义的对象.

这是小提琴:https://jsfiddle.net/49rkcaud/1/

javascript jquery

7
推荐指数
1
解决办法
582
查看次数

具有或不具有执行括号的新对象之间的差异

可能重复:
new MyClass(); vs new MyClass;

请参阅下面的评论

在创建对象的新实例时,下面的AB之间什么区别

A,使用括号

var foo = new Bar();
Run Code Online (Sandbox Code Playgroud)

B没有括号

var foo = new Bar;
Run Code Online (Sandbox Code Playgroud)

我正在使用backbone.js,其中许多示例不使用括号.另外,调用()'s'的正确术语是什么?执行?

javascript

6
推荐指数
0
解决办法
198
查看次数

新的MyFunction()与新的(MyFunction)

我正在查看Vows文档,并在几个地方使用语法

var myVar = new(MyFunction);
Run Code Online (Sandbox Code Playgroud)

例如

var promise = new(events.EventEmitter);
Run Code Online (Sandbox Code Playgroud)

我熟悉new MyFunction()并且new MyFunction(是的,我已经读过这个问题).但上面的语法对我来说是新的 - 它看起来像一个函数调用,虽然我怀疑它只是new MyFunction添加了一些括号.这些使用方式有什么区别new吗?如果没有,使用其中一个是否有任何好的理由?我原以为new MyFunction()是最清晰的.

如果这是重复的道歉 - 我搜索但找不到它.

javascript syntax new-operator

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