我有一个带有以下代码的"file1.js“,其中我创建了一个元素脚本来调用另一个名为test.js的js文件
var property = 'email';
var NewScript=document.createElement('script');
NewScript.src="/js/test.js?property="+property;
document.body.appendChild(NewScript);
代码工作良好,因为调用(或插入)文件"test.js“我的问题是,我也想发送一个变量到"test.j
好吧,所以我是格伦特和Node.js的新手。我正在建立一个网站,并决定'main.js‘文件变得太大。因此,我把它分开,现在我尝试使用Grunt将所有这些JS文件重新组合在一起。
我的问题是,我需要为所有这些JS文件中的所有函数提供一些全局变量。更确切地说,我们站点上的每个页面都是通过body标记中的id标识的:
<body id="home">
这些JS文件中有许多包含确保某些函数仅在加载适当页面时才运行的if语句。例如:
if (page == 'home') {
var title = "Home Page"
当我运行下面的代码时,它给出了错误
var name = function print(){
console.log("welcome ......");
};
name();
js.js:5 Uncaught TypeError: name is not a function
at js.js:5
但是,当我将var关键字更改为let时,它运行得很好,有人能解释一下吗
let name = function print(){
console.log("welcome ......");
};
name();
我觉得自己是这里的初学者。我不太明白为什么这两个代码的行为不同。谁能解释一下吗?我觉得我很想念这里的JS技工。
Code1:
function Car(){
var miles = 0;
function drive(dist){
miles = miles+dist;
}
return {
drive:drive,
miles:miles
}
}
var car = new Car;
car.drive(50);
Code2:
function Car(){
var m
我是JavaScript的新手,但我对Python很熟悉。我试图找出Python字典和JS中的对象之间的区别。
据我所知,Python中的字典中的键需要预先定义,但它可以在JS中的对象中未定义。然而,我对这些案件感到困惑:
var n = 'name';
var n2 = n;
var person = {n: 'mike'};
person.n # 'mike'
person['n'] # 'mike'
person[n2] # undefined
person.n2 # undefined
per
你好,我是JS和面向对象编程的新手。考虑到这一点,我有两个问题
let arr = [1,2,3]
let a = 'hi'
当我运行typeof()时,arr是'object‘,是'string’,对吗?
所以我的问题是,
当使用arr.length获取数组的长度时,它背后的原理是什么?具体来说,我不明白如何才能得到length属性,尽管我从未初始化它。当我们生成一个对象时,JS会自动设置一个长度属性值吗?它是如何工作的?
不只是存在于对象中吗?但是为什么我们可以使用a.length来获得变量a的长度呢?我以为objectname.property是为了对象。
我正在读一个关于理解JS中的删除的。
我理解通过变量声明创建的属性不能被删除,或者更准确地说,具有DontDelete属性,而通过属性赋值创建的属性可以被删除。
但是,我对属性重载是如何处理这个想法感到困惑的:
> var GLOBAL_OBJECT = this;
undefined
> var declared = "I cannot be deleted";
undefined
> delete declared;
false
> assigned = "I can be deleted";
'I can be del
我有一个模块"a“,它导出一个作为null启动的变量。这个变量被导入模块"b“中。
在对初始变量进行一些更改之后,我尝试从模块"b“再次访问它,结果发现我得到了原始的null值。
这些变量不是作为引用导入的吗?这意味着,它们应该反映在运行时后期对它们所做的任何更改。
// main.js
import * as a from './a.js'
import * as b from './b.js'
// a.js
let test = null
export default test
export function change()
我想在node.js中实现“变量共享”,但我找不到一种可行的方法。 我的目标是能够更改另一个文件中的变量。例如,我在主文件中有a,但在另一个文件(test.js)中执行了某些操作后,a应该在主文件中更改它的值。有可能实现吗?如何实现? 我试过这段代码,但它似乎不起作用。 main.js let a = 10;
module.exports.test = a;
console.log(a);
require('./test.js');
console.log(a); test.js let b = require('./main.js').test;
b = 1